在mongoDB中按类别获取帖子数据

时间:2018-11-27 11:53:45

标签: node.js mongodb mongoose

我正在使用带有MongoDB nodejs和mongoose的API。我有两个收藏类别和职位。在帖子收集中,我插入带有类别标签的类别字段。我想按类似

的类别查找帖子
[{
name: 'some category',
slug: 'categpry slug'
posts: [{
    post one
},
{
    post two
}]},{
name: 'some category 2',
slug: 'categpry slug 2'
posts: [{
    post one
},
{
    post two
}]

}]

我尝试在MongoDB中进行汇总,但是每显示一个帖子都会重复显示所有类别。下面是我的代码。

Category.aggregate([
    {
        $lookup: {
            from: "posts",
            localField: "slug",
            foreignField: "category",
            as: "posts"
        }
    },
    {
        $unwind: "$posts"
    },
    {
        $match: { "language": req.params.appname }
    }
]).exec((err, posts) => {
    if (err)
        throw err;
    res.send(posts)
})

0 个答案:

没有答案