简单的模型:Mongoid,如何通过reference_one关联(以及后续的关联)order_by?
class hat
embedded_in :owner
field :color
end
class owner
embedds_one :hat
referenced_in :house
field :name
end
class house
references_one :owner
field :number
end
所以,简单地提出,我们有关联到业主房屋的集合,车主可以有颜色的帽子。
我可以简单地通过它们的数量排序的房子:
House.all.order_by([[ :number, :asc ]])
但我要的是订购房子,他们的主人的名字是什么,我非常希望这样写:
House.all.order_by([[ :'owner.name', :asc ]])
但它不起作用...
甚至进一步我想能够按主人的帽子的颜色排序房屋
House.all.order_by([[ :'owner.hat.color', :asc ]])
任何想法,我怎么能做到这一点无需重写一切可能的话:)
感谢
亚历
我明白了,那么这不会对我来说是不可能的,太多的房子在我的系统:)我将不得不去标准化数据和复制的帽子颜色我的房子......我将不得不离开,结果是我的帽子颜色可能不是最新的...... – Alex
您是否需要将房屋所有者存储在另一个集合中?您可以将店主嵌入店内,并将帽子嵌入店主。 – Hck