当我尝试将节点中的用户记录保存到数据库时,仅保存ID

我在将用户数据保存到MongoDB时遇到问题;保存功能仅保存用户的ID,并且在尝试保存之前登录用户时,我也仅获得ID。 当我登录req.body时,我得到了所有数据。

我猜问题出在实例化userSchema的某个地方。

const userSchema = require('../models/user.model');
var User = mongoose.model('user', userSchema);

这是我的代码:

module.exports.register = (req, res, next) => {
var user = new User(req.body);
user.name = req.body.name;
user.email = req.body.email;
user.username = req.body.username;
user.password = req.body.password;

user.save((err, doc) => {
    if (!err) {
        res.send(doc);
    }
    else {
        console.log(err);
        if (err.code == 11000) {
            res.status(422).send(['Duplicate email adrress found.']);
        }
        else
            return next(err);
    }
});

}

评论
  • Oo熊猫
    Oo熊猫 回复

    它应该像下面这样

    module.exports.register = (req, res, next) => {
    var user = new User({
    
    name:req.body.name,
    email:req.body.email,
    username:req.body.username,
    password:req.body.password
    
    });
    
    
    user.save((err, doc) => {
        if (!err) {
            res.send(doc);
        }
        else {
            console.log(err);
            if (err.code == 11000) {
                res.status(422).send(['Duplicate email adrress found.']);
            }
            else
                return next(err);
        }
    });
    }