[英]Nested forms in Rails 4 using Cocoon gem
我正在尝试使用Cocoon gem创建嵌套表单。 我使用github提供的文档。 我已经建立了这样一个模型:
//requst.rb has_many :filled_cartridges, dependent: :destroy accepts_nested_attributes_for :filled_cartridges, :reject_if => :all_blank, allow_destroy: true //filled_cartridge.rb belongs_to :request
在我的_form中,我有嵌套的形式:
<%= f.fields_for :filled_cartridges do |filled_cartridge| %> <%= render 'filled_cartridge_fields', f: filled_cartridge %> <%= link_to_add_association 'add', f, :filled_cartridges %> <% end %>
和我的_filled_cartridge_fields部分:
<fieldset> <%= f.text_field :cartridge_id %> <%= f.hidden_field :_destroy %> <%= link_to_remove_association "remove", f %> </fieldset>
我也为request_controller中的:id和:_destroy定义了强大的参数。
link_to_add_association工作正常,删除正常。 我不知道为什么会这样。 另外,当我单击link_to_add_association时,将完成默认操作,即导航到/#页面。
我认为问题与此有关: 嵌套属性无法与新的父代一起创建子代
您需要添加inverse_of
属性以使其工作
has_many :filled_cartridges, inverse_of: :request, dependent: :destroy
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.