mongoose模式忽略值

我放弃了

我有一个像这样定义的Schema:

var UserSchema = new Schema({ userNick : { type: String, required: true, index: { unique: true, sparse: true } } , userEmail : { type: String, required: true, index: { unique: true, sparse: true } } , userPass : { type: String, required: true } , userRole : { type: String, default: 4 } , userFirstname : String , userLastname : String , userImage : String , userBday : { type: Date, required: true } , userCreated : { type: Date, default: Date.now } }); var userModel = mongoose.model('UserModel', UserSchema); 

没有什么特别的我想。 但是,当我尝试保存新用户时,userRole和userBday被忽略。 我使用inputtypes=生日date和分裂的价值是这样的:

 var bdayReformat = data.BDay.split('-'); var bDay = new Date(bdayReformat[0], bdayReformat[1]-1, bdayReformat[2]); 

这返回:星期四4月05 1973 00:00:00 GMT + 0100(CEST)

我宣布:

 account = new userModel({ userNick : data.Nickname , userEmail : data.Email , userPass : data.Password , userFirstname : data.Firstname , userLastname : data.Lastname , userImage : 'media/noimage.png' , userBday : bDay }); 

然后我保存:这是结果:

 { userNick: 'XXXXXXX', userEmail: 'XXX@XXXXX.de', userPass: 'XXXXXXX', userImage: 'media/noimage.png', _id: 50cdb5d77fbdc88013000001, userCreated: Sun Dec 16 2012 12:51:51 GMT+0100 (CET) } 

我不知道为什么userRole或bDay没有保存。 我是一个初学者,在服务器端编程,在mongodb和mongoose绝对初学者。

感谢您的帮助我使用Nodejs v0.8.15 mongoose 3.5存储在azurecloud与免费的mongolab-db

IDE(如果你有小费)是Webstorm 5,我在MAC上

自我回答。 这是双代码的问题。