标签: nested-forms

你能嵌套html表格吗?

是否可以嵌套像这样的html表单

<form name="mainForm">
  <form name="subForm">
  </form>
</form>
Run Code Online (Sandbox Code Playgroud)

这两种形式都有效吗?我的朋友遇到了这个问题,这是subForm作品的一部分,而另一部分却没有.

html nested-forms

434
推荐指数
12
解决办法
24万
查看次数

Rails嵌套表单与has_many:through,如何编辑连接模型的属性?

使用accepts_nested_attributes_for时如何编辑连接模型的属性?

我有3个模型:由连接器加入的主题和文章

class Topic < ActiveRecord::Base
  has_many :linkers
  has_many :articles, :through => :linkers, :foreign_key => :article_id
  accepts_nested_attributes_for :articles
end
class Article < ActiveRecord::Base
  has_many :linkers
  has_many :topics, :through => :linkers, :foreign_key => :topic_id
end
class Linker < ActiveRecord::Base
  #this is the join model, has extra attributes like "relevance"
  belongs_to :topic
  belongs_to :article
end
Run Code Online (Sandbox Code Playgroud)

所以当我在主题控制器的"新"动作中构建文章时......

@topic.articles.build
Run Code Online (Sandbox Code Playgroud)

...并在topics/new.html.erb中创建嵌套表单...

<% form_for(@topic) do |topic_form| %>
  ...fields...
  <% topic_form.fields_for :articles do |article_form| %>
    ...fields...
Run Code Online (Sandbox Code Playgroud)

... Rails自动创建链接器,这很棒. 现在我的问题是:我的链接器模型还具有我希望能够通过"新主题"表单更改的属性.但是Rails自动创建的链接器除了topic_id和article_id之外,其所有属性都有nil值.如何将其他链接器属性的字段放入"新主题"表单中,这样它们就不会出现?

nested join ruby-on-rails nested-forms

103
推荐指数
2
解决办法
4万
查看次数

Rails - 使用form_for和fields_for,如何在fields_for块中访问子对象?

在我的第一个rails应用程序中,我正在尝试使用form_forfields_for创建嵌套对象表单.到目前为止一直很好,但我无法弄清楚如何在fields_for块中访问子对象.我已经在子对象中预先填充了一个字段,其中包含我想在用户指令中显示的数据.

车库模型
:

has_many :cars, :dependent => :destroy         
accepts_nested_attributes_for :cars
Run Code Online (Sandbox Code Playgroud)

汽车:

belongs_to :garage
Run Code Online (Sandbox Code Playgroud)

车库控制器

def new
  @garage = Garage.new
  for i in 1..5 
    @garage.cars.build :stall_number => i
  end
end
Run Code Online (Sandbox Code Playgroud)

_form.html.erb

<%= form_for @garage do |f| %>
  <%= f.label :title, "Garage Name" %><br />
  <%= f.text_field :title %>
  <% f.fields_for :cars do |builder| %>
    <p>Enter license for car parked in stall: <%= car.stall_number %></p>
    <%= f.label :license, "License #:" %><br />
    <%= f.text_field :license …
Run Code Online (Sandbox Code Playgroud)

forms nested-forms ruby-on-rails-3

45
推荐指数
1
解决办法
3万
查看次数

symfony2多个嵌套表单原型

我想在另一个集合类型中包含一个集合类型.它应该如下所示:在此输入图像描述

只使用一个集合工作正常,但我需要编辑外部表单的原型,因此它为每一行呈现内部表单的原型.

任何想法我怎么能这样做?还有什么是最好的保存方式

编辑:现在我正在尝试渲染嵌套表单的原型:

  <ul class="characteristics-container" data-prototype="{{ form_widget(form.characteristics.vars.prototype)|e }}" data-prototype-options="{{ form_widget(form.characteristics.options.vars.prototype|e ) }}">
                    {# iterate over each existing tag and render its only field: name #}
                    {% for characteristic in form.characteristics %}
                        <li>{{ form_row(characteristic.name) }}</li>

                        <div class="characteristics-options">
                            {% for opt in form.characteristics.options %}

                            {% endfor %}                     
                        </div>


                    {% endfor %}
                </ul>
Run Code Online (Sandbox Code Playgroud)

它给出了错误 form_widget(form.characteristics.options.vars.prototype|e

Method "options" for object "Symfony\Component\Form\FormView" does not exist in 
Run Code Online (Sandbox Code Playgroud)

我尝试了特征[0],它说密钥不存在

这是我的表单类:

PromotionType(基本形式)

$builder              
            ->add('characteristics','collection', array(
                'label'         => 'Caracteristicas',
                 'type'         => new PromotionCharacteristicType(),
                 'allow_add'    => true,
                 'allow_delete' => …
Run Code Online (Sandbox Code Playgroud)

forms prototype nested-forms symfony

36
推荐指数
1
解决办法
2万
查看次数

fields_for not rendering - rails 3

最后转移到Rails 3进行新项目,并且已经遇到了新手问题.

尝试做一个简单的嵌套表单.

2个型号:列表和任务

列表模型

class List < ActiveRecord::Base
  has_many :tasks, :dependent=>:destroy
  accepts_nested_attributes_for :tasks, :reject_if => lambda { |a| a[:name].blank? }
end
Run Code Online (Sandbox Code Playgroud)

任务模型

class Task < ActiveRecord::Base
  belongs_to :list

end
Run Code Online (Sandbox Code Playgroud)

列表控制器

def new
   @list = List.new
   3.times{ @list.tasks.build }
end
Run Code Online (Sandbox Code Playgroud)

列表/ new.html.erb

<% form_for :list, :url=>{:action=>"create"} do |f| %>
    <%= f.text_field :name, :class=>'big' %>
    <%= f.label :name, "ex: Today's Todos, Christmas List" %>

    <% f.fields_for :tasks do |builder| %>
        <p>
            <%= builder.label :name, "Task" %>
            <%= builder.text_field :name %>
            <%= …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails nested-forms fields-for

26
推荐指数
1
解决办法
1万
查看次数

如何使用Haml和Formtastic动态添加和删除嵌套模型字段

我们都看到了辉煌的复杂形式railscast,其中Ryan Bates解释了如何使用Javascript在父对象表单中动态添加或删除嵌套对象.

有没有人对如何修改这些方法以便与Haml Formtastic合作有任何想法?

在这里添加一些上下文是我目前面临的问题的简化版本:

#教师表格(有嵌套的主题表格)[来自我的申请]

- semantic_form_for(@teacher) do |form|
  - form.inputs do
    = form.input :first_name
    = form.input :surname
    = form.input :city
    = render 'subject_fields', :form => form 
    = link_to_add_fields "Add Subject", form, :subjects   
Run Code Online (Sandbox Code Playgroud)

#个人主题形式部分[来自我的申请]

- form.fields_for :subjects do |ff| 
  #subject_field
    = ff.input :name
    = ff.input :exam
    = ff.input :level
    = ff.hidden_field :_destroy
    = link_to_remove_fields "Remove Subject", ff 
Run Code Online (Sandbox Code Playgroud)

#Application Helper(直接来自Railscasts)

  def link_to_remove_fields(name, f)
    f.hidden_field(:_destroy) + link_to_function(name, "remove_fields(this)")
  end

  def link_to_add_fields(name, f, association)
    new_object = f.object.class.reflect_on_association(association).klass.new
    fields = f.fields_for(association, …
Run Code Online (Sandbox Code Playgroud)

javascript ruby-on-rails nested-forms formtastic

24
推荐指数
1
解决办法
1万
查看次数

rails中的嵌套表单 - 访问has_many关系中的属性

我有一个用户和个人资料模型.一个用户可以拥有许多配置文件 在用户创建过程中,我只需要在我的用户模型中访问配置文件部分中的一个信息(即电话号码).因此,我正试图通过它完成它attr_accessible.我的user.rb看起来像这样.

has_many :profiles
attr_accessible :handle, :email, :password, :profile_mobile_number
attr_accessor : :profile_mobile_number
Run Code Online (Sandbox Code Playgroud)

我面临的问题是,当我尝试在user.rb中的方法中调用getter方法profile_mobile_number时(该方法是私有的,虽然我认为无所谓),但我得到一个空值.我在users/new.html.erb表单中使用以下内容

我的问题是这样做的正确方法是什么?我应该使用<% f.fields_for :profile do |ff| -%><% f.fields_for :profiles do |ff| -%>(注意第二个是复数).当我使用复数:配置文件时,我甚至看不到表单上的字段.我在这里错过了什么?什么是需要在模型user.rb中使用的时态?:profile_phone_number或:profiles_phone_number?谢谢.

ruby ruby-on-rails nested-forms

23
推荐指数
2
解决办法
3万
查看次数

Rails has_many:通过嵌套表单

我刚刚加入has_many :through联盟.我试图实现保存所有3个表数据(的能力Physician,Patient通过一个单一的形式和关联表).

我的迁移:

class CreatePhysicians < ActiveRecord::Migration
  def self.up
    create_table :physicians do |t|
      t.string :name
      t.timestamps
    end
  end
end

class CreatePatients < ActiveRecord::Migration
  def self.up
    create_table :patients do |t|
      t.string :name
      t.timestamps
    end
  end
end

class CreateAppointments < ActiveRecord::Migration
  def self.up
    create_table :appointments do |t|
      t.integer :physician_id
      t.integer :patient_id
      t.date :appointment_date
      t.timestamps
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

我的模特:

class Patient < ActiveRecord::Base
  has_many :appointments
  has_many :physicians, :through => :appointments
  accepts_nested_attributes_for :appointments
  accepts_nested_attributes_for :physicians
end
class Physician …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails nested-forms has-many-through

22
推荐指数
3
解决办法
2万
查看次数

格式错误的数据包:Django管理嵌套表单无法提交,连接被重置

我有一个django嵌套管理员表单,下面的代码是我的admin.py文件内容:

# -*- coding:utf-8 -*-
from django.db.models import Q
from django import forms

from django.contrib.auth.admin import UserAdmin as AuthUserAdmin
from django.contrib import admin
from django.contrib.auth.forms import UserCreationForm, UserChangeForm
from django.contrib.auth.hashers import UNUSABLE_PASSWORD_PREFIX, identify_hasher
from django.forms.utils import flatatt
from django.utils.html import format_html
from django.utils.safestring import mark_safe
from django.utils.translation import ugettext as _, ugettext
from django.contrib.auth.models import Group, Permission
from nested_admin.nested import NestedStackedInline, NestedModelAdmin

from HomeMakers.apps.system.models import Dependant, Benefit, User, \
    Unit, Stack, Parking
from mtools.fields import UniqueValueWidget, PersianDateField


class …
Run Code Online (Sandbox Code Playgroud)

python django django-admin nested-forms

22
推荐指数
1
解决办法
649
查看次数

Rails:验证has_many关联中parent_id的存在

我有一个项目资源,有很多任务.我想确保每个任务都有一个project_id添加validates_presence_of :project_id到任务模型.

但是,在使用任务创建新项目时,在记录保存之前,project_id将不可用,因此我无法使用validates_presence_of :project_id.

所以我的问题是,如何在任务模型中验证project_id的存在?我想确保每个任务都有父母.

...

class Project < ActiveRecord::Base

  has_many :tasks, :dependent => :destroy
  accepts_nested_attributes_for :tasks, :allow_destroy => true
Run Code Online (Sandbox Code Playgroud)

...

class Task < ActiveRecord::Base

 belongs_to :project
 validates_presence_of :project_id
Run Code Online (Sandbox Code Playgroud)

validation ruby-on-rails nested-forms models

21
推荐指数
2
解决办法
9646
查看次数