我有一个有很多插槽的封面模型。我在#196 Railcast和#197 Railcast之后创建了一个表单。该表单可以很好地创建,但是当我想更新封面(特别是子插槽)时,它不会更新。问题似乎是插槽字段的 html name 属性不包含正确的 ID,相反,它们似乎总是从插槽的 0 开始并增加。以下是相关代码:
_form.html.erb:
<%= form_for(@cover) do |f| %>
...
<%= f.fields_for :slots do |builder| %>
<%= render "slot_fields", :f => builder %>
<% end %>
...
<% end %>
_slot_fields.html.erb:
<div class="fields">
<p>
<div class="field">
<%= f.label :width %>
<%= f.number_field :width %>
</div>
...
输出html:
<p>
<div class="field">
<label for="cover_slots_attributes_0_width">Width</label>
<input id="cover_slots_attributes_0_width" name="cover[slots_attributes][0][width]" type="number" value="50" />
</div>
但是插槽 ID 为 3
提前致谢