我如何使用 Accept_nested_attributes_for 在 Rails 中保存多个新的相关对象?目前它只允许我保存一条新记录。
问问题
1539 次
2 回答
2
您可以将其作为哈希数组传递,例如
Model.new(:nested_model_attributes=>{[0]=>{:param=>value},[1]=>{:param=>value})
于 2012-05-30T02:42:23.490 回答
1
这是另一个例子。如果我有许多兄弟姐妹的录取模型,并且我有一个表格,我会在其中获取超过 1 个兄弟姐妹的详细信息。然后在控制器中我需要编写以下代码。
def new
@admission = Admission.new()
3.times { @admission.siblings.build }
end
以下将是您的页面代码。
<%= form_for(@admission) do |f| %>
# fields of admission form
<%= f.fields_for :siblings do |builder| %>
# fields for siblings form
<% end %>
<%= f.submit %>
以下将是您的型号代码。
class Admission < ActiveRecord::Base
has_many :siblings, :dependent => :destroy
accepts_nested_attributes_for :siblings
end
于 2012-05-30T13:32:02.823 回答