Mongodb 查找管道内部的ObjectId匹配不';我不能正常工作

Mongodb 查找管道内部的ObjectId匹配不';我不能正常工作,mongodb,mongoose,aggregate,Mongodb,Mongoose,Aggregate,问题部分是管道内部的{$match:{contentId:$$content\u id}。它返回一个空数组。但当我像下面这样改变它时,它工作得很好。这是我的聚合管道的阶段对象。第一个问题是什么?当let变量是objectId时,简单匹配设计为不在查找管道中工作?谢谢你抽出时间 const contentReactionLookUp = (user_id) => { return { $lookup: { from: "contentrea

问题部分是管道内部的
{$match:{contentId:$$content\u id}
。它返回一个空数组。但当我像下面这样改变它时,它工作得很好。这是我的聚合管道的阶段对象。第一个问题是什么?当let变量是objectId时,简单匹配设计为不在查找管道中工作?谢谢你抽出时间

const contentReactionLookUp = (user_id) =>  { 
    return {
        $lookup: {
            from: "contentreactions",
            let: { content_id: "$_id" },
            pipeline: [
                { $match:
                     { $expr:


                                     { $eq: [ "$contentId", "$$content_id" ] },


                     }
                },
                //{ $match: { contentId: "$$content_id" }}, it doenst' work! 
            ],
            as: "userReaction"
        },
    }
}
我在这里找到了解决办法。mongo聚合简单匹配在其传递值为字段路径的情况下不起作用