我正在开发一个解决方案,在Rails中使用collection_select
表单帮助器将自定义数据属性添加到选项标记。
我在stackoverflow上研究了一些帖子,并在查阅了一些API文档后做了大量的试验和错误。我几乎就在那里,但遗憾的是我的解决方案只将属性添加到select
- 标记而不是option
- 标记。
这样我填充html-options-hash(第6位):
<%= f.collection_select(:parallax_id, @parallax.all, :id, :title, {}, { :"data-icon" => @parallax.map{ |p| "#{p.image}"}} ) %>
这会产生一个选择标记,如:
<select data-icon="/uploads/image/image/4/169_strecken-ausgang.jpg" name="game[parallax_id]" id="game_parallax_id">...</select>
但是我希望获得data-icon
属性的选项。当我切换位置并将我的数据图标添加到options-hash(第5个位置)时,不会输出任何内容。
答案 0 :(得分:10)
这是你想要的吗?
= f.select :parallax_id, options_for_select(@parallax.map {|p| [p.title, p.id, {'data-icon' => p.image }]})
答案 1 :(得分:0)
仅供参考,我正在研究这个问题,在这里找到了更合适的解决方案:How do I set the HTML options for collection_select in Rails?。