Mongoid查询相关集合

时间:2015-05-31 01:46:29

标签: ruby-on-rails mongoid

我正在试图弄清楚如何查询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不直接支持这种类型的查询。如何构建一个能够实现这一目标的查询?

1 个答案:

答案 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为习惯于处理关系数据库的应用程序开发人员提供了关系式关联,但我们不建议您广泛使用它们。