我有一些与散列中的模型关联的数据。哈希值在控制器中生成:@hash
.
为这些数据创建表单的正确方法是什么?
我为视图想出了以下代码:
<% @hash.keys.each do |key| %>
<div class="field">
<%= f.label key %><br />
<%= text_field_tag "hash_" + key, @hash[key] %>
</div>
<% end %>
这会生成表单,但它将每个哈希项创建为表单中的单独变量。这似乎不是提交回数据的正确方法。我想以哈希形式返回数据,并使用以下命令访问它params[:hash]
.
做这个的最好方式是什么?
使用 Rails 3.07、Ruby 1.9.2。
Thanks.
编辑:我应该说清楚这一点。此代码位于为模型生成的表单内。因此,表单需要提交模型的所有字段以及上述哈希值。
基于此article https://web.archive.org/web/20141114035424/http://rails.nuvvo.com/lesson/6371-action-controller-parameters您应该将 text_field_tag 中的名称更改为
<% @hash.keys.each do |key| %>
<div class="field">
<%= f.label key %><br />
<%= text_field_tag "hash[" + key + "]", @hash[key] %>
</div>
<% end %>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)