当用户提交注册页面

时间:2017-05-25 08:20:46

标签: node.js express mongoose passport.js

我正在为自己创建一个练习应用程序。所以现在我需要在新用户提交表单时存储ID。所以如果你有人请告诉我。我需要这个,因为我将使用新注册的用户ID创建一个随机生成的哈希。请帮我这样做

谢谢

这是新用户注册的代码。

passport.use('local-signup', new LocalStrategy({
    usernameField : 'username',
    passwordField : 'password',
    passReqToCallback : true
},
function(req, username, password, done) {
    process.nextTick(function() {
        User.findOne({'email': req.body.email}, function(err, user1) {
            if (err) return done(err);
            User.findOne({'local.username': username}, function(err, user2){
                if (err) return done(err);
                if (user1) {
                    return done(null, false, req.flash('signupMessage', 'That email is already exist.'));
                }
                if (user2) {
                    return done(null, false, req.flash('signupMessage', 'That username is already exist.'));
                }
                else {
                    var newUser = new User();
                    newUser.local.username = username;
                    newUser.local.password = newUser.generateHash(password);
                    newUser.usertype = "592000f0161d63ac334358d3";
                    newUser.first = req.body.first;
                    newUser.last = req.body.last;
                    newUser.email = req.body.email;
                    newUser.save(function(err) {
                        if (err)
                            throw err;
                        return done(null, newUser);
                    });
                }
            })  
        });
    });
}));

1 个答案:

答案 0 :(得分:1)

您可以使用newUser.id = req.body.id;(有时也会使用_id。)