如何在Rails表单中仅列出集合中的一种语言?

时间:2012-04-04 12:54:03

标签: ruby-on-rails ruby-on-rails-3 forms collections

我有一些代码可以在Rails表单中显示一长串语言,并且只想显示一种语言作为可选项。其余的不应该列出,但仍然在集合中(它是一个包含所有国家的数据库表)

我有这段代码:

    = f.input :state_id,
              :label => "Your country",
              :collection => DataCountry.all,
              :value => @city,
              :id => "city_id",
              :name => "city_id"

我怎么能用这个只列出一种语言?

1 个答案:

答案 0 :(得分:1)

  

我怎么能用这个只列出一种语言?

选择您想要的国家/地区,而不是将所有国家/地区作为:collection传递。这只会使用第一个,但您也可以使用[DataCountry.find_by_whatever...]

= f.input :state_id,
          :label => "Your country",
          :collection => [DataCountry.all.first]
          :value => @city,
          :id => "city_id",
          :name => "city_id"

请注意,因为您选择了一个DataCountry,所以必须将其包装在[]中,以便将数组作为:collection传递。