在 mongoose strict : false 中保存后,findOne() 后无法编辑

Posted

技术标签:

【中文标题】在 mongoose strict : false 中保存后,findOne() 后无法编辑【英文标题】:after saving in mongoose strict : false,can't edit after findOne()在 mongoose strict : false 中保存后,findOne() 后无法编辑 【发布时间】:2014-12-29 08:55:23 【问题描述】:

这是我的架构

名称:字符串, 电话:字符串, 地址:字符串

mongoose.model("user",userSchema);

var user = mongoose.model("user");

var newUser = new user(name : "d",phone : "p",address : "q"); 新用户.save();

newUser.findOne(_id : "dsklfj98908",function(err,result)

 result.set('unlockGames',"puzzle",[String],strict : false);
 result.save();

);

工作得很好,直到我想再换一次:

//不工作 1 newUser.findOne(_id : "dsklfj98908",function(err,result)

 result.get("unlockGames").push("Gag jan stees");
 result.save();

);

//不工作 2 newUser.findOne(_id : "dsklfj98908",function(err,result)

 var unlockGames = result.get("unlockGames").push("Gag jan stees");
 result.set('unlockGames',unlockGames,[String],strict : false);
 result.save();

);

请帮忙!)

【问题讨论】:

【参考方案1】:

现在可以了

var game = "es chlnei duq inch eiq anelu";

var unlockGames = result.get("unlockGames");

result.unlockGames = unlockGames.push(游戏);

result.markModified('unlockGames');

就是这样);

【讨论】:

以上是关于在 mongoose strict : false 中保存后,findOne() 后无法编辑的主要内容,如果未能解决你的问题,请参考以下文章

使用 strict: true 在 Mongoose 中创建动态模式

如果字段不在模式中,如何使猫鼬失败?

将 select: false 设置为 mongoose 的子文档数组

mongoose createIndex: false 是不是意味着索引将在后台创建或根本不创建?

Mongoose 验证:必需:false,验证:正则表达式,空值问题

Mongoose 验证:必需:false,验证:正则表达式,空值问题