如何使用rails collection_select发送两个值

时间:2015-10-29 18:56:37

标签: ruby-on-rails ruby-on-rails-4

我想用我的集合选择发送两个值。目前,我正在保存ID,但我也希望能够访问我的控制器中的name

= f.collection_select :foo_id, @foos, :id, :name

这是我的代码,非常简单。只是无法访问该名称。 该集合还来自外部API,因此我不想再次触摸API来获取名称。

1 个答案:

答案 0 :(得分:1)

正如我在评论中所说的那样。您可以自定义<option>标记值,如:

 = f.collection_select :foo_id, @foos, ->(ob) { "#{ob.name}|#{ob.id}" }, :name

现在,在控制器内部拆分|上的值,然后使用它。

这只是数以百万计的想法。