我的用例:
=>更新:如果我发现特定的电子邮件(有效),请设置当前日期
=> INSERT:如果找不到在请求中传递的电子邮件(无效),则日期为null的特定电子邮件
我认为如果找不到特定的电子邮件,应该插入upsert,但是由于某种原因,找不到。
JSON结构
"listener": [
{
"email": "email",
"date": "2019-06-23T00:22:52.190Z"
}
],
路线
exports.add_listener = function (req, res) {
Playlist.findOneAndUpdate(
{"platform.strauss": req.body.url},
{$set: {"listener.$[elem].date": new Date()}},
{
arrayFilters: [{"elem.email": req.body.email}],
upsert:true,
new:true,
}, function (err, data) {
err ? console.error(err) : res.status(200).send(data);
}
)
};