我有这个模型
//user notif schema
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var UserNotifSchema = new mongoose.Schema({
NotifType : {type : Number},
NotifData : {
User_source_id : {type : Schema.Types.ObjectId, ref : 'User'}, // for course, forking
Course_id : {type : Schema.Types.ObjectId, ref : 'Course'}, // for course
UserFile_id : {type : Schema.Types.ObjectId, ref : 'UserFile'} // for forking
},
NotifTarget : [
{type : Schema.Types.ObjectId, ref : 'User'}
],
Created_at : {type : Date, required : true, default : Date.now},
});
var UserNotif = mongoose.model('UserNotif', UserNotifSchema);
module.exports = UserNotif;
我创建了一个包含NotifTarget
用户通知的模型。我希望得到一些特定用户的通知并像这样做
var user_id = req.session.userLogin.UserId;
NotifModel.find({'NotifTarget' : user_id})
.populate('NotifTarget')
.exec(function(err, doc){
if (err){
res.send(err);
}
else{
res.send(doc);
}
})
如果user_id
中只有一个数组NotifTarget
,但在NotifTarget
中提供多个数据时返回空数组,则可以。对此有什么解决方案吗?