2012-09-06 2 views
0

I했습니다 내가 실제로 같은 선택의 원활한 모든 도시를 표시하고있어,하지만 지금부터 지역 번호가 나는 그룹화 된 선택을 표시 할 성장그룹화 선택 3 개 모델

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 

다음 모델 위치 이름을 레이블로 사용하고 해당 위치의 사전 순으로 정렬 된 옵션 (cities : id, : name)을 표시합니다.

현재 도시를 얻으려는 것이 for each location get all zones, for each zone get all cities 인 경우 인스턴스 변수에서 해당 토글을 푸시하고 표시합니다. grouped_collection_select를 사용해 보았습니다. 그러나이 경우 어떻게 사용할 수 있는지 알 수는 없지만 grouped_options_for_select를 사용해 보았습니다.하지만 첫 번째 것이 더 적절하다고 생각합니다.

답변

0

시도

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