Проблемная часть { $match: { contentId: "$$content_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"
},
}
}