我正在试图弄清楚如何查询Mongoid中的相关集合。
这是我的对象模型(为简洁起见而简化):
VirtualKey.Back
我正在尝试构建一个查询,以获取具有特定名称的所有类别的产品,例如“玩具”
Category
-------------------
class Category
include Mongoid::Document
field :name, type: String
...
belongs_to: product
end
class Product
include Mongoid::Document
field :name, type: String
...
has_one :category
end
我收到了零回合。我认为mongoid不直接支持这种类型的查询。如何构建一个能够实现这一目标的查询?
答案 0 :(得分:1)
尝试以下
category = Category.find_by(name: 'Toy')
# all the following will work
products = Product.where(category: category)
products = Product.where(category_id: category.id)
这将有效,but it's not recommended to use mongoid this way
Mongoid为习惯于处理关系数据库的应用程序开发人员提供了关系式关联,但我们不建议您广泛使用它们。