使用options_for_select和静态值选择RoR

时间:2016-06-27 21:29:56

标签: ruby-on-rails

我有这个选择:

<%= f.select :operator_id, options_for_select(@tecnici.collect{ |tec| [tec.nome, tec.id] }, (params[:action] == 'edit' || params[:action] == 'update' ? @work.operator_id : 0 ) ), {include_blank: 'Me Medesimo'}, class: 'form-control' %>

使用&#34; options_for_select&#34;我可以从db检索选项velues,但我需要在选项列表中添加一个静态值(非空白!),但我无法找到我能做到的!

有人可以帮助我吗?

感谢所有人!

2 个答案:

答案 0 :(得分:0)

只需将其添加到集合中即可。如果感觉有点hackish,你可以创建一个方法,将数组返回到一个选项列表。

([['Static', 'static'],['Another', 'another']] + @tecnici.collect{...})

答案 1 :(得分:0)

只需将它们添加到数组中,然后再将其传递给options_for_select

options_for_select(@tecnici.collect { |tec| [tec.nome, tec.id] } + [['My item 1', 'item_1_id'], ['My item 2', 'item_2_id']],...

当然,选项准备代码最适合辅助函数。