Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 嵌套rails表单与简单表单?_Ruby On Rails_Ruby On Rails 3_Activerecord_Simple Form - Fatal编程技术网

Ruby on rails 嵌套rails表单与简单表单?

Ruby on rails 嵌套rails表单与简单表单?,ruby-on-rails,ruby-on-rails-3,activerecord,simple-form,Ruby On Rails,Ruby On Rails 3,Activerecord,Simple Form,如何实现嵌套rails表单?我很难正确设置。现在我有: <%= simple_form_for @user do |f| %> <%= f.input :city %> <%= f.input :address %> <%= f.input :zipcode %> <%= f.association :interests, :as => :check_boxes, :label => false %>

如何实现嵌套rails表单?我很难正确设置。现在我有:

<%= simple_form_for @user do |f| %>

  <%= f.input :city %>
  <%= f.input :address %>
  <%= f.input :zipcode %>
  <%= f.association :interests, :as => :check_boxes, :label => false %>
  <%= f.association :holidays, :as => :check_boxes, :label => false %>

  <%= f.simple_fields_for :friend_birthdays do |friend_birthday| %>
    <%= f.input :name %>
    <%= f.input :gender, :collection => ['male','female'] %>
  <% end %>
  <%= f.button :submit %>
<% end %>

:复选框,:label=>false%>
:复选框,:label=>false%>
[‘男性’、‘女性’]%>

f.association
对于我的兴趣和假期模型来说效果很好,因为它们每个只需要收集一个属性。但是,
friend\u birthdays
模型与用户模型(兴趣和假期)具有相同的精确关系,但是需要编辑/添加多个属性。有什么想法吗?

如果您使用的是Rails 3+,那么它可以处理嵌套表单,而不需要任何额外的gem。关键在于对模型中的关联使用“accepts_nested_attributes_for”方法,并在表单帮助器中使用fields_for方法。仔细阅读他们的作品

我从未使用过简单表单,但我相信它推动了Rails中嵌套表单的开发。因此,猜测一下,您需要将嵌套表单引用编写为:

<%= f.simple_fields_for :friend_birthdays do |friend_birthday| %>
  <%= friend_birthday.input :name %>
  <%= friend_birthday.input :gender, :collection => ['male','female'] %>
<% end %>

[‘男性’、‘女性’]%>

关键是,您需要呼叫嵌套表单上的帮助者,而不是父表单。

非常感谢。。我应该向我的控制器添加什么使其工作?控制器对应于此嵌套中的父模型,因此创建/更新操作将调用父模型上的创建/更新。接受的\u嵌套的\u属性\u负责对子级调用create/update。在您的情况下,用户。