Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 使用3种型号进行分组选择_Ruby On Rails_Ruby On Rails 3_Activerecord - Fatal编程技术网

Ruby on rails 使用3种型号进行分组选择

Ruby on rails 使用3种型号进行分组选择,ruby-on-rails,ruby-on-rails-3,activerecord,Ruby On Rails,Ruby On Rails 3,Activerecord,我有以下几种型号 class Location < ActiveRecord::Base has_many :zones attr_accessible :name end class Zone < ActiveRecord::Base belongs_to :location has_many :cities attr_accessible :name end class City < ActiveRecord::Base belongs_to :

我有以下几种型号

class Location < ActiveRecord::Base
  has_many :zones
  attr_accessible :name
end

class Zone < ActiveRecord::Base
  belongs_to :location
  has_many :cities
  attr_accessible :name
end

class City < ActiveRecord::Base
  belongs_to :zone
  attr_accessible :name, :zip_code
end
类位置
我实际上是在同一个select中无缝显示所有城市,但由于现在位置数量不断增加,我希望使用位置名称作为标签显示分组选择,然后显示该位置的按字母顺序排列的选项(cities:id,:name)

我目前要做的是为每个位置获取城市,为每个区域获取所有城市,然后在实例变量中将它们推到一起并显示它们。 我尝试过使用分组集合选择,但我不知道如何使用它。在这种情况下,我也尝试过使用分组选项选择,但我认为第一个更合适。

试试

@cities= City.joins(:zone).where(:zones => { :location_id => @location.id })