我试图使标题增加的数字在下面的形式,因为用户添加一个级别(一个新的形式)。例如,当用户点击添加关卡时,它应该显示"2级"如果他们添加另一个关卡,它会显示"3级"
这是我想要增加的标题的第二部分
<fieldset class="levelCreator">
<%= f.label :title, "Level"%> <br /><%# This is what I would like to increment %>
<%= f.text_field :title %><br />
<%= f.hidden_field :_destroy %>
<%= link_to "remove", '#', class: "btn btn-danger btn-mini remove_fields" %>
<%= f.fields_for :steps do |builder| %>
<%= render 'step_fields', f: builder %>
<% end %>
<%= link_to_add_fields "add step", f, :steps %>
是添加级别按钮存在的第一部分
<%= form_for(@course) do |f| %>
<%= render 'shared/error_messages_courses' %>
<div class="courseCreator">
<%= f.label :title %>
<%= f.text_field :title %>
<%= f.label :description %>
<%= f.text_field :description %>
<%= f.label :typeof %>
<%= f.text_field :typeof %>
</div>
<%= f.fields_for :levels do |builder| %>
<%= render 'level_fields', f: builder %>
<% end %>
<%= link_to_add_fields "add level", f, :levels %>
<%= f.submit "Save", class: "btn btn-large btn-primary save" %>
<% end %>
</div>
</div>
这可能不是很优雅,但父视图中的计数器应该可以做到这一点:
视图:
<% index = 1 %>
<%= f.fields_for :levels do |builder| %>
<%= render 'level_fields', {f: builder, index: index} %>
<% index = index + 1 %>
<% end %>
部分:
<%= f.label :title, "Level #{index}"%>