我有一个看起来像这样的吸气剂:
UserSchema
.path('avatar')
.get(function(avatar){
if(!avatar){
avatar = "defaultAvatar.jpg";
}
return avatar;
});
工作得非常好。不幸的是,我有一个很大的问题。当我创建一个新用户时。使用此方法:
var newUser= new UsersModel();
user.name = "John Smith";
user.email = "example@gmail.com";
user.save();
正在触发getter并插入默认的“defaultAvatar.jpg”,就像它是一个setter一样。非常讨厌,真的需要帮助...
答案 0 :(得分:1)
在架构定义中,您应该使用如下路径修改器:
var UserSchema = new Schema({
avatar : { type: String, default: "defaultAvatar.jpg" }
});