我试图在统计数据中找到用户,如果他们不存在,请创建它们并给我信息。
启动已执行,但我在其他console.logs或响应中没有得到任何响应。
我该如何解决这个问题?
console.log("starting");
var playerid = "57c435669f437e007b974fbb";
Crimestats.findAndModify({ query: { userid : playerid}, update: { $setOnInsert: { userid : playerid }}}).then( function(err, stats){
if (err) {
console.log(err);
}
console.log("got any results");
console.log(stats);
resolve(stats);
});
只有回复:
starting
答案 0 :(得分:1)
如果不存在,您需要添加插入新选项的选项,因此需要添加upsert: true
可以尝试一下:
var playerid = "57c435669f437e007b974fbb";
Crimestats.findAndModify({
query:{ userid : playerid},
update: {
$set: { name: "xxx" }, // if found update name or when insert
$setOnInsert: { userid : playerid }
},
upsert: true
}
).then( function(err, stats){
if (err) {
console.log(err);
}
console.log("got any results");
console.log(stats);
resolve(stats);
});