Mongoose中的嵌套类别查询

时间:2014-09-18 09:34:20

标签: node.js mongodb mongoose

您好我需要使用一个查询进行此操作。 在我的产品架构中,我已经定义了与类别的多对多关系,所以我有类似的东西

  categories: [{type: Schema.Types.ObjectId, ref: 'Category'}]

类别可以有子类别,所以我在我的类别模式

中有这个
  parent: {type: Schema.Types.ObjectId, ref: 'Category', default:null}

我想进行查询以获取类别中的产品及其下的所有子类别,并且我只有父类别ID。

这就是我现在所拥有的,但我希望有一个查询

var findProductsByCategories = function (ids) {

    var promise = Product.find({categories: {$in: ids}}).exec();

    promise.then(function (products) {

        res.send(products);
    });
}

// Get this category children
var promise = Category.find({parent: req.params.category}).select('_id').exec();

promise.then(function (children_ids) {

    // Add the parent id as well
    children_ids.push(req.params.category);

    return children_ids;

}).then(findProductsByCategories);

0 个答案:

没有答案