Ruby on rails Rails-选择标记辅助对象-显示两列值

Ruby on rails Rails-选择标记辅助对象-显示两列值,ruby-on-rails,Ruby On Rails,在导轨中 我们可以使用以下选项显示带有城市名称的选择框 <%= options_from_collection_for_select(City.all, :id, :name) %> 现在,我的选择框有以下选项: 墨尔本 伦敦 我需要在选择框中显示带有城市名称和国家的选项。我该怎么做 像这样 澳大利亚梅尔伯恩 英国伦敦 在城市表中有国家/地区id。首先,您应该在城市模型中实现适当的方法,例如:带有国家/地区的名称: def name_with_country "#

在导轨中

我们可以使用以下选项显示带有城市名称的选择框

<%= options_from_collection_for_select(City.all, :id, :name) %>

现在,我的选择框有以下选项:

  • 墨尔本
  • 伦敦
我需要在选择框中显示带有城市名称和国家的选项。我该怎么做

像这样

  • 澳大利亚梅尔伯恩
  • 英国伦敦

在城市表中有国家/地区id。

首先,您应该在
城市
模型中实现适当的方法,例如:
带有国家/地区的名称

def name_with_country
  "#{name}, #{country.name}"
end
其次,您应该使用此方法,并在
城市
查询中包含
国家
,以避免N+1问题:

<%= options_from_collection_for_select(City.includes(:country), :id, :name_with_country) %>

@rails007您试过了吗?有帮助吗?