2

这是一个简单的结构:

class Dinner
  belongs_to :user
  field :name

class User
  has_many :dinners
  field :name

现在,我想要找到“约翰”主持的所有晚宴。寻找类似的东西:

Dinner.where('user.name' => 'john')

问题是我找不到任何方法来通过引用属性进行查询。有什么建议么?

4

1 回答 1

3

我认为它不适用于您的模型。通过嵌套属性进行的 AFAIK 查询仅适用于嵌入式文档。你有两个选择:

Dinner.where(user: User.find_by(name: 'john'))

或者直接在Dinner 中存储用户名。这是多余的,但使您的查询更简单。

MongoDB 不是关系数据库,不支持连接。

于 2013-01-31T14:39:11.317 回答