Bạn có thể sử dụng $ mergeObjects
để kết hợp tweet hiện có với is_liked
và sau đó sử dụng $ project
để loại trừ likedBy
mảng từ kết quả cuối cùng, hãy thử:
db.gamers.aggregate([
{
$project: {
tweets: {
$map: {
input: "$tweets",
as: "tweet",
in: {
$mergeObjects: [
"$$tweet",
{ is_liked: { $in: [ "some-random-dude", { $ifNull: [ "$$tweet.likedBy", [] ] } ] } }
]
}
}
}
}
},
{
$project: {
"tweets.likedBy": 0
}
}
])