我有一个表单,我正在尝试构建以编辑多个记录。它很复杂,不直接映射到数据库,并且可以有任意数量的记录。我编写了代码,因此所有数据都作为哈希传递给视图。像这样:
@formdata = {"datafield_1"=>"value_1", "datafield_2"=>"value_2"}
我想做的是创建类似的东西:
f.textfield :datafield_1
f.textfield :datafield_2
f.textfield :datafield_3
etc. etc. etc.
但我不知道如何将for循环的索引传递给变量名。简而言之,我该怎么做:datafield_i我的索引在哪里?
答案 0 :(得分:0)
<% %w(1 2 3).each do |i| %>
<%= f.textfield(:"datafield_#{i}") -%>
<% end %>
或
<% @formdata.keys.each do |datafield| %>
<%= f.textfield(datafield.to_sym) -%>
<% end %>