rails 4 - 在collection_select中连接字段

use*_*289 2 ruby html-select ruby-on-rails ruby-on-rails-4

我正在通过几个教程学习Rails 4,并构建一个演示应用程序.

我有一个名为players链接到team表的表.球队有很多球员,球员只有一支球队.所以我使用collection_select标签将团队数据拉入播放器表单.

它看起来像这样:

<%= collection_select :player, :team_id, Team.find(:all), :id, :name, options ={:prompt => "Select a team"} %>
Run Code Online (Sandbox Code Playgroud)

这很好 - 但我希望格式看起来像"团队名称:团队城市" - 我无法弄清楚如何连接标签中的值:name:city值.这可能吗?

Raf*_*aez 13

Team模型中创建一个方法,如下所示

  def name_with_city
    "#{name}: #{city}"
  end
Run Code Online (Sandbox Code Playgroud)

然后使用如下

<%= collection_select :player, :team_id, Team.find(:all), :id, :name_with_city, {:prompt => "Select a team"} %>
Run Code Online (Sandbox Code Playgroud)

collection_select文档中了解更多信息