지금 레일즈를 통해 강렬한 acts_as_tree MySQL 쿼리에 관한 문제를 다루고 있습니다. 쿼리하는 모델은 Foo
입니다. Foo
은 City
, State
또는 Country
중 하나에 속할 수 있습니다. 제 목표는 위치에 따라 Foo
을 쿼리하는 것입니다. 내 위치 테이블과 같이 설정 :울트라 - 그랜드 슈퍼 acts_as_tree 레일스 쿼리
- 나는 각각의 위치를 저장하는 acts_as_tree 및 다형성 협회의 조합을 사용
locations
- 라는 내 데이터베이스의 테이블을 가지고
City
,State
또는Country
하나있다.
은 이제 예를 들어 가정 해 봅시다 (이것은 내 표는 행 id
, name
, parent_id
, type
로 구성되어 있음을 의미), 난 상태 "캘리포니아"에 Foo
의를 조회 할. "California"에 직접 속하는 Foo
옆에, "Los Angeles"와 "San Francisco"에 Foo
과 같은 "California"의 모든 City
에 속하는 모든 Foo
을 가져야합니다. 그뿐 아니라 "California"가 들어있는 Country
에 속하는 Foo
을 "미국"으로 가져와야합니다.
나는 연관성이없는 몇 가지 사항을 시도해 보았습니다. 나는 몇 가지 유용한 레일스 푸를 놓치고있는 것처럼 느껴진다. 어떤 충고?