我想在ref对象中添加变量:
的usermodel
var userSchema = new mongoose.Schema({
pseudo : { type : String },
fullname : { type : String },
password : { type : String },
email : { type : String },
//tags : { type : Array },
tags : [
{
objectId : { type : mongoose.Schema.Types.ObjectId, ref: 'tag'},
completed : { type : Boolean, default : false }
}
],
dateCreation : { type : Date, default : Date.now }
});
tagModel
var tagSchema = new mongoose.Schema({
name : { type : String },
alias : { type : String },
description : { type : String },
countMembers : { type : Number, default : 0 },
dateCreation : { type : Date, default : Date.now }
});
我尝试过:
userModel.findByIdAndUpdate(
req.session.passport.user._id,
{ $inc: { "tags.objectId.countMembers": 1 }, $addToSet: {"tags": { objectId: mongoose.Types.ObjectId(publicTag._id.toString()) }}},
{ upsert: true },
function(err, model) {
if (err)
throw err;
});
和
userModel.findByIdAndUpdate(
req.session.passport.user._id,
{ $addToSet: {"tags": { objectId: mongoose.Types.ObjectId(publicTag._id.toString()) }}},
{ $inc: { "tags.objectId.countMembers": 1 }, upsert: true },
function(err, model) {
if (err)
throw err;
});
我收到错误'无法使用该部分。' :(
也许我必须使用填充?我不知道..
如果一个人有一个好的网站/链接来了解查询mongoose中的额外选项..
每次我在3小时内查找问题只是为了使用1个查询,当我混合使用多个选项时,例如 $ inc 和 upsert 。 / p>
谢谢,