Mongoose 实例 .save() 不工作

编程入门 行业动态 更新时间:2024-10-09 00:52:09

Mongoose <a href=https://www.elefans.com/category/jswz/34/1771375.html style=实例 .save() 不工作"/>

Mongoose 实例 .save() 不工作

我对 Mongoose 和 MongoDb 有疑问

非常有趣的是,只有

Model.update
有效,而
save
永远无效,甚至不触发回调。

猫鼬:4.4.5 MongoDB:3.0.8

快速路线

var mongoose = require('mongoose');
mongoose.connect("mongodb://127.0.0.1:27017/db");
var db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
db.once('open', function(callback) {
    console.log("connection to db open")
});
var User = require("../models/user.js");

用户模型

var user = new Schema({
    uid: { type: Number, required: true, unique: true},
    hwid: { type: String, default:""},
    bol:{type:String,default:""}
});

更新 Enpoint

工作版本:Model.update()

User.update({_id: id}, {
    uid: 5, 
}, function(err, numberAffected, rawResponse) {
    console.log(err);
})

无效版本,我必须解决这个问题:Object.save()

User.find({_id:id}, function(err,user){
    if(err){
         console.log(err);
    }
    if(!user){
         console.log("No user");
    }else{
        user.uid = 5;
        user.save(function(err,news){
            console.log("Tried to save...");
        });
    }
    console.log("At least worked");
})

甚至回调都没有触发。连接成功打开。它从不调用回调。


  1. 尝试使用
    var User = connection.model('User', schema)
    没用。
回答如下:

我有同样的问题。我的问题是关于更改 db 中的数组,然后当我尝试使用 .save() 时,它不明白我更改了任何东西,然后 .save() 不起作用。 我只是在使用 .save() 之前使用 markModified() ,我的问题就解决了。

这是我有问题的代码:(不工作)

club.members[index].name = new_name;
club.save();

这是我解决的代码:(工作)

club.members[index].name = new_name;
club.markModified('members');
club.save();

享受!

更多推荐

Mongoose 实例 .save() 不工作

本文发布于:2024-05-13 16:30:55,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1760093.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:实例   工作   Mongoose   save

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!