iGE*_*GEL 23 ruby-on-rails form-for
我想在同一页面中对同一模型多次使用form_for帮助器.但是输入字段使用相同的ID属性(在HTML中),因此单击另一个表单中字段的标签将在第一个表单中选择相同的输入.
是否有解决方案除了通过以下方式设置所有属性:for =>"title _#{item.id}"和:id =>"title _#{item.id}"?
使用Rails 3.0.9
Mar*_*ütz 32
你可以使用:namespace => 'some_unique_prefix'选项.与此相反:index,这不会更改name属性中使用的值.
也可以使用数组,例如,当您有嵌套的表单或碰巧有一些共同字段的不同表单时::namespace => [@product.id, tag.id]或者:namespace => [:product, @product.id]
iGE*_*GEL 11
我自己找到了答案,可以将一个:index选项传递给form_for.该字符串将用于id和属性:
<%= form_for @person, :index => @person.id do |f| %>
<%= f.label :name %>
<%= f.text_field :name %>
<%= f.submit %>
<% end %>
Run Code Online (Sandbox Code Playgroud)
将解析
<form accept-charset="UTF-8" action="/person/11" class="edit_person" id="edit_person_11" method="post">
<!-- Hidden div for csrf removed -->
<label for="person_11_name">Name</label>
<input id="person_11_name" name="person[11][name]" size="30" type="text" />
<input name="commit" type="submit" value="Update Person" />
</form>
Run Code Online (Sandbox Code Playgroud)
请注意,它也会更改输入的名称.
| 归档时间: |
|
| 查看次数: |
7833 次 |
| 最近记录: |