嵌套表单会双重创建每个嵌套对象中的两个。
为了让您了解架构,父驱动程序具有:
Driver.rb
:
has_many :workables, dependent: :destroy
has_many :vehicles, through: :workables
在视图中
<%= form_for(driver) do |f| %>
<%= f.fields_for :workables, Workable.new do |w_form| %>
<% end %>
<% end %>
我觉得我得到了一个海森虫,一个有时存在但有时不在那里的量子虫。当天早些时候,我正在加倍创作,所以我删除了&#34; Workable.new&#34;来自field_for帮助器的位 - 这让我回到单一创建。然后,最近,除非我将Workable.new放入。
,否则field_for拒绝渲染答案 0 :(得分:0)
试试这个
<强>控制器强>
def new
@driver = Driver.new
@driver.workables.build
end
查看强>
<%= form_for(@driver) do |f| %>
<%= f.fields_for :workables do |w_form| %>
<% end %>
<% end %>