Rails - 从对象哈希创建选择标签

2024-05-01

我需要根据哈希中的可用值创建一个选择框。

例如,我有一个“事物”,该“事物”有多种状态字段:

1 => 'State A'
2 => 'State B'

通过事物上的方法可用。

我如何从中构建一个选择标签?


正如施罗克韦尔所说:

Hash.each |a|返回以下形式的数组a = [key, value],所以对于哈希@status_fields你可以写:

<%= collection_select('thing', 'status', @status_fields, :first, :last) %>

或者,如果您希望键显示在选择列表中并且值指向选择列表值,则:

<%= collection_select('thing', 'status', @status_fields, :last, :first) %>

这将选择 thing.status 给出的选项,如果返回 nil,则什么也不选择

如果您只想创建任何与对象无关的选择,请使用

<%= select_tag('name', options_from_collection_for_select(@status_fields, :first, :last, '2')) %>

其中“2”是所需选择的索引

PS:我没有足够的声誉来修改原始帖子或对其发表评论

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Rails - 从对象哈希创建选择标签 的相关文章

随机推荐