我得到了这个架构:
var mongoose = require('mongoose');
var userSchema = new mongoose.Schema({
email: {type:String, unique: true, lowercase: true},
cpf: String,
password: String,
profile:{
name:{type:String, default:''},
photo: {type:String, default:''}
},
adress:String,
history:[{
date: Date,
paid:{type:Number, default:0},
item:{type:mongoose.Schema.Types.ObjectId, ref:'Products'}
}]
});
module.exports = mongoose.model('User', userSchema);
但是,当我使用User.create({email:req.body.email,密码:req.body.password,profile.name:req.body.name})时,当我尝试将一些值传递给个人资料时.name,console给了我一个错误。 SyntaxError:意外的令牌。
我怎样才能获得这个对象并为他传递一些价值?
答案 0 :(得分:0)
如果您的密钥包含有限的字符集,则Javascript允许您省略对象上的键周围的引号。期间.
不是其中之一,因此您需要引用密钥。
User.create({
email: req.body.email,
password: req.body.password,
'profile.name': req.body.name
})