如何在更新后投影数组的最后一个元素



所以我有以下查询:

ListModel
.findOneAndUpdate(
{
_id: list_id
},
{   
$push: {
"items": {
details: the_template
}
}
},
{
new: true,
projection: {
items: 1
}
}
)

因此,这会向我返回更新文档的数组,但是我如何只插入最后一个元素?

您可以使用$slice,在您的情况下:


ListModel
.findOneAndUpdate(
{
_id: list_id,
},
{   
$push: {
items: {
details: the_template,
},
},
},
{
new: true,
projection: {
items: {
$slice: -1,
},
},
},
);

最新更新