Mongoose是否可以在一个模型上创建一个公式字段,该模型从相关模型中获取数据,并在相关记录更改时自动更新。假设我有一个待办事项模型和一个用户模型。在todo上,我想有一个user_id和一个user_email字段。 user_email将获取相关用户的电子邮件字段。如果更改了用户记录,则会在待办事项上自动更新user_email字段以反映更改。这样,我可以使用我的客户端应用程序仅使用电子邮件地址查询待办事项。以下是我想到的模型:
module.exports = mongoose.model('Todo', {
description : String,
User_id : mongoose.Schema.Types.ObjectId,
isCompleted : Boolean,
createdDate : Date,
User_email : String
});
module.exports = mongoose.model('User', {
name : String,
email : String
});
答案 0 :(得分:0)
是的,有可能!根据这个例子可以这样做。
User.pre('save', function(next){
var nowDocument = this;
User.findById( doc._id, function(err, beforeDocument){
if(err) retrun next(err);
// Here is to compare and modify*
next();
});
});
*到目前为止,数据已经过验证。