1
我有一個小項目來向我介紹一些前端技術。我正在使用Node,Express,Pug和MongoDB。貓鼬不保存正確的模式
我在user.js的文件中定義的用戶模式:
var userSchema = mongoose.Schema({
username : String,
password : String,
jobs : [{ type: mongoose.Schema.Types.Mixed }]
});
然後,在我的passport.js文件,我開始註冊過程。
User.findOne({ 'username' : username }, function(err, user) {
// if there are any errors, return the error
if (err) {
console.log(err);
return done(err);
}
// check to see if theres already a user with that email
if (user) {
console.log('user exists');
return done(null, false, req.flash('signupMessage', 'That username is already taken.'));
} else {
console.log('creating new user...');
// if there is no user with that email
// create the user
var newUser = new User();
newUser.username = username;
newUser.password = newUser.generateHash(password);
newUser.jobs = [{ website: 'google.com' }];
// save the user
newUser.save(function(err) {
if (err) {
console.log(err);
throw err;
}
console.log('user saved: ', newUser);
return done(null, newUser);
});
}
});
的成功後保存新的用戶爲:
{
"_id": {
"$oid": "5967d2acc64d953330a3ac32"
},
"__v": 0
}
我的目標是有在網站的鏈接,可以推入陣列該用戶的數據庫的數組。
感謝您的任何援助。
我修改了作業數組的類型並修改了newUser的創建。現在我發現User.generateHash既不是一個既是實例又是靜態函數的函數。 – klewis