我有一个名为用户名的mongoose Schema,我正在尝试在虚拟环境中连接用户名。但是当我在这个模型中记录虚拟结果或者执行函数时,它返回undefined。
我已经参考了文档和他们嵌套模型的示例,但我更喜欢当前模型而不是嵌套它。希望有人能帮助我解决这个问题。
const Schema = mongoose.Schema;
const UserSchema = new Schema({
firstname: {
type: String,
lowercase: true,
required: true
},
lastname: {
type: String,
lowercase:true,
text: true,trim: true,
required: true},
middlename: {
type: String,
text: true,trim: true,
lowercase: true
}
UserSchema.virtual('fullname')
.get(function(){
return this.firstname + ' ' + this.lastname;
})
.set(function(firstname, lastname) {
firstname = this.firstname;
lastname = this.lastname;
});
UserSchema.set('toObject', {virtuals: true});
UserSchema.set('toJSON', {virtuals: true});
});
const User = module.exports = mongoose.model('User', UserSchema);