Ruby on rails 嵌入Ruby和simple_表单的循环
我试图使用简单的_形式循环遍历一个值数组 其中@resume.employerorg包含以下值: [“凯撒圣克拉拉医院”、“凯撒医院”, “加州大学医学中心”、“加州大学医学中心”、“某医院”、“萨特奥本信仰医院”、“凯撒罗斯维尔医院”, “萨特罗斯维尔医院”] 在我看来,我有以下几点Ruby on rails 嵌入Ruby和simple_表单的循环,ruby-on-rails,ruby,simple-form,Ruby On Rails,Ruby,Simple Form,我试图使用简单的_形式循环遍历一个值数组 其中@resume.employerorg包含以下值: [“凯撒圣克拉拉医院”、“凯撒医院”, “加州大学医学中心”、“加州大学医学中心”、“某医院”、“萨特奥本信仰医院”、“凯撒罗斯维尔医院”, “萨特罗斯维尔医院”] 在我看来,我有以下几点 <h3>7. Employer Names</h3> <%= simple_form_for @resume do |f| %> <% @resume.e
<h3>7. Employer Names</h3>
<%= simple_form_for @resume do |f| %>
<% @resume.employerorg.each do |i| %>
<%= f.input :employerorg, label: 'First Employer' %>
<%= f.button :submit %>
<% end %>
<br/>
<% end %>
7。雇主名称
但这会创建8个输入字段,每个字段都填充
凯泽圣克拉拉医院凯泽医院加州大学医学中心
医疗中心某医院萨特奥本信仰医院凯撒
罗斯维尔医院萨特罗斯维尔医院
如何使用数组中的单个项填充每个输入,而不是使用整个数组填充每个输入8次?您应该使用
I
的值来生成输入。大概是这样的:
<h3>7. Employer Names</h3>
<%= simple_form_for @resume do |f| %>
<% @resume.employerorg.each_with_index do |i, index| %>
<% input_id = "employerorg_#{index}".to_sym %>
<%= f.input input_id, label: 'First Employer', input_html: {value: i} %>
<%= f.button :submit %>
<% end %>
<br/>
<% end %>
7。雇主名称
您需要根据项目
索引生成输入\u id
。否则,所有输入都将具有相同的名称和ID,不会有任何区别。上述代码将生成8个单独的输入和提交按钮。你想要实现什么?您实际上是说,对于数组中的每个项目,生成一个输入和一个提交按钮。@resume.employerorg.each不应该在每个输入字段中只显示一个employerorg吗。不,不应该@resume
是表单的目标对象,此部分
将使用基本上是目标对象的内容填充输入。public\u send(:EmployeeRog)
这就是为什么它会在每个输入中填充每个数组值的原因。谢谢。如何用数组中的一个单独项目填充每个输入,而不是用整个数组填充每个输入8次?感谢Federico,这帮助我更好地理解了这些概念。
<h3>7. Employer Names</h3>
<%= simple_form_for @resume do |f| %>
<% @resume.employerorg.each do |i| %>
<%= f.input :employerorg, label: 'First Employer' %>
<%= f.button :submit %>
<% end %>
<br/>
<% end %>
<h3>7. Employer Names</h3>
<%= simple_form_for @resume do |f| %>
<% @resume.employerorg.each do |i, index| %>
<%= f.input "emp-#{index}".to_sym, label: "Employer: #{index}", input_html: {value: i} %>
<% end %>
<br/>
<% end %>