rails:fields_for选择

int*_*rgc 11 select ruby-on-rails helper

在我看来,我使用fields_for来显示关系表的表单数据.但是,此表单的一部分将有可供选择的列表.我看到有标签,text_field,text_area助手为的form_for和fields_for助手将在从已经填充模型对象所需的信息填写...但对于一个选择列表助手将做?

当我具有一对多关系时,这将特别有用,因为fields_for遍历模型对象中已经存在的每个项目并使用索引显示它.

有这样的事吗?

rya*_*anb 29

您可以使用几种选择辅助方法.最常见的是collection_select.如果您belongs_to在模型上有关联并且想要使用选择菜单来设置它,那么这很好.

<%= f.collection_select :category_id, Category.all, :id, :name %>
Run Code Online (Sandbox Code Playgroud)

对于其他情况,存在更通用的选择方法.在这里,您可以提供一系列您想要提供的选项.

<%= f.select :priority, [["Low", 1], ["Medium", 2], ["High", 3]] %>
Run Code Online (Sandbox Code Playgroud)

每个数组元素中的第一个值是select选项的名称,第二个值是将分配给该属性的值.

还有许多其他选择菜单(日期和时间),但上述两个应涵盖大多数情况.这些方法适用于两者form_forfields_for.