2011-10-04 3 views
0

나는 내가 누구 ZIP_CODE 06511 인 도시에 해결하는 조직 및 참조 주소를 만들려면 지금이 모델을 MongoID 관계형 쿼리

class State 
    include Mongoid::Document 
    field :name  
    embeds_many :cities 
end 


class City 
    include Mongoid::Document  
    field :name 
    field :zip_code  
    embedded_in :state  
    references_many :organization_addresses 
end 

class Organization 
    include Mongoid::Document  
    field :name  
    references_many :organization_addresses 
end 

class OrganizationAddress 
    include Mongoid::Document  
    field :address 
    field :latitude, :type=>Float 
    field :longitude, :type=>Float  
    referenced_in :organization 
    referenced_in :city 
end 

했다. 우선 국가에 포함 된 도시를 어떻게 찾을 수 있습니까? 그리고 어떻게 내가 그것을 참조 할 수 있습니다. 나는 쿼리 State.where("cities.zip_code"=>"06511").count을 썼습니다. 도시에 데이터베이스가있는 곳에서는 아무 것도 반환하지 않습니다.

어떻게 검색 한 후 조직의 주소로 참조 할 수 있습니까?

+0

이봐 나자르,이에 대한 해결책을 찾을 수 있나요? –

답변

-1

MongoID에서 포함 된 문서를 참조 할 수 없습니다.

+0

확인. 하지만시 우편 번호로 주를 어떻게 찾을 수 있습니까? –

0

여기 해결책은 도시 안의 도시 ID를 유지하는 것입니다. 그런 다음 그 배열 안에 특정 ID가있는 상태를 찾을 수 있습니다. 당신은

난 정말 그것으로 얻을 수 this을보고 당신을 추천 등, 인디애나, NIN (하지)에 키워드가 어려운 논리를 구현할 수

+0

감사합니다. MongoDB의 스키마 디자인을 이해하는 데 도움이됩니다. –