在 Rails 4 的嵌套形式中添加额外的 Field_for
Add Extra Field_for in Nested form with Rails 4
我制作了一个表格,我可以用它的所有数据制作新的 Entity
,并使用 Has_many :through
关联添加与该实体关联的新 Users
。
问题来了。我希望能够使用按钮 "Add extra user" 添加额外的用户字段 li
元素。我找不到办法做到这一点。我对 java-script 不太熟悉。
/views/entities/_form.html.erb
<%= form_for(@entity) do |f| %>
<div class="field">
<%= f.label :name %>
<%= f.text_field :name %>
</div>
<div class="field">
<%= f.label :number %>
<%= f.number_field :number %>
</div>
Users:
<ul>
<%= f.fields_for :bonds do |b| %>
<li>
<div class="field">
<%= b.label :_destroy %>
<%= b.check_box :_destroy %>
</div>
<div class="field">
<%= b.select :user_id, User.all.collect { |p| [ p.name, p.id ] } %>
</div>
<div class="field">
<%= b.label :label %><br>
<%= b.number_field :lebal %>
</div>
</li>
<% end %>
</ul>
<div class="actions">
<%= f.submit %>
</div>
<% end %>
有没有一种方法可以使用页面上的按钮生成具有唯一 ID 的额外 f.field_for :bonds
?它也可以在我使用相同表单的编辑页面上使用吗?
感谢帮助!
您可以使用 Cocoon。 Cocoon 使处理嵌套表单变得更容易。
我制作了一个表格,我可以用它的所有数据制作新的 Entity
,并使用 Has_many :through
关联添加与该实体关联的新 Users
。
问题来了。我希望能够使用按钮 "Add extra user" 添加额外的用户字段 li
元素。我找不到办法做到这一点。我对 java-script 不太熟悉。
/views/entities/_form.html.erb
<%= form_for(@entity) do |f| %>
<div class="field">
<%= f.label :name %>
<%= f.text_field :name %>
</div>
<div class="field">
<%= f.label :number %>
<%= f.number_field :number %>
</div>
Users:
<ul>
<%= f.fields_for :bonds do |b| %>
<li>
<div class="field">
<%= b.label :_destroy %>
<%= b.check_box :_destroy %>
</div>
<div class="field">
<%= b.select :user_id, User.all.collect { |p| [ p.name, p.id ] } %>
</div>
<div class="field">
<%= b.label :label %><br>
<%= b.number_field :lebal %>
</div>
</li>
<% end %>
</ul>
<div class="actions">
<%= f.submit %>
</div>
<% end %>
有没有一种方法可以使用页面上的按钮生成具有唯一 ID 的额外 f.field_for :bonds
?它也可以在我使用相同表单的编辑页面上使用吗?
感谢帮助!
您可以使用 Cocoon。 Cocoon 使处理嵌套表单变得更容易。