MongoID关系查询
问题描述:
我有这些模型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
现在,我想创建一个地址为一个组织,并说明解决的城市,其ZIP_CODE是06511
。首先,我该如何找到嵌入状态的城市。然后我可以如何参考它。我写了查询State.where("cities.zip_code"=>"06511").count
它不会返回任何数据库中存在的城市。
我该如何搜索,然后将其引用到组织的地址?
答
您不能在MongoID中引用嵌入式文档。
+0
好的。但我怎样才能找到与城市邮政编码的状态? –
答
这里的解决方案是两个保持州内的城市的id-s,然后你可以找到在该数组内有某些id-s的状态。您可以在那里实现困难逻辑与,NIN(不)关键字等
我真的建议你看this进入它
+0
谢谢大家,它可以帮助我理解MongoDB中的模式设计。 –
嘿纳扎尔,你有没有找到一个解决的办法? –