这是一个简单的结构:
class Dinner
belongs_to :user
field :name
class User
has_many :dinners
field :name
现在,我想要的是找到“John”举办的所有晚宴。寻找类似的东西:
Dinner.where('user.name' => 'john')
问题是我找不到任何通过引用属性进行查询的方法。有什么建议吗?
最佳答案
我认为它不适用于您的模型。 据我所知,通过嵌套属性进行查询仅适用于嵌入文档。 您有两个选择:
Dinner.where(user: User.find_by(name: 'john'))
或者直接将用户名存储在Dinner中。它是多余的,但使您的查询更简单。
MongoDB 不是关系数据库,不支持连接。
关于ruby-on-rails - 通过引用属性查询 Mongoid,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14618453/