node.js - 更新用户信息 mongoose, MongoDB, NodeJS

标签 node.js mongodb mongoose

我正在编辑个人资料页面,我想更改/更新我的 mongooseDB 中文档的信息,但我的代码没有更新文档。有什么建议吗?

router.get('/edit', isAuthenticated, function (req, res, next) {
    res.render('profile/editprofile', {
        user: req.user
    });
});
router.post('/edit', isAuthenticated, function (req, res, next) {

    User.update({_id: req.session.passport.user.id}, {
        email: req.body.email,
        password: req.body.password,
        name: req.body.name,
        phone: req.body.phone,
        classc: req.body.classc,
        //graduated: req.body.graduated;
        major: req.body.major,
        minor: req.body.mino,
        linkedin: req.body.linkedin,
        bio: req.body.bio
    }, function (err){
        if (err) console.log(err);
        res.render('profile/profile', {
        user: req.user
    });
});
});

最佳答案

你忘了添加$set操作符

router.post('/edit', isAuthenticated, function (req, res, next) {

    console.log(req.user._id) //console like this

    User.update({_id: req.user._id}, {$set: req.body}, function (err){
        if (err) console.log(err);
        res.render('profile/profile', {
        user: req.user
    });
});
});

关于node.js - 更新用户信息 mongoose, MongoDB, NodeJS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50431619/

相关文章:

node.js - 使用 CORS 和 OpenShift 上的 Node 应用程序通过 POST 清空请求正文

javascript - Mongoose Validation - 执行多个自定义验证

c++ - 如果已经创建了一个 mongocxx::instance 对象,则无法创建该对象

node.js - Mongoose Populate Method 不填充值

database - Node Mongoose,转换为 ObjectId 失败,路径 "N"处的值 "PATH"

javascript - 避免在 then 函数 JS 中嵌套 Promise

javascript - 如何从 BlobResult[] 获取 blob 名称?

javascript - 正则表达式在 `:` 之前获取字符串直到多个空格

javascript - 如何使用 javascript 将二进制文件插入 mongodb?

javascript - 哪个更糟?多一个数据库访问权限还是一个过时的值?