【发布时间】:2019-04-01 04:06:37
【问题描述】:
所以我有下一个模型:
const PostSchema = new Schema({
name: String,
likedBy: [{ type: mongoose.Schema.Types.ObjectId, ref: 'User' }]
})
我还有一个名为 isLoggedInOrNot 的中间件,如果有授权,它会填充 req.user。
所以在索引页面上,我想查找并返回最新的帖子,并且每个帖子都应该添加一个自定义字段didILiked。所以我想要的是这样的:
Post.find().select({ didILiked: { likedBy: req.user._id } }).sort('-createdAt').exec()
我知道上述内容甚至无效,而只是我想要完成的演示。
假设创建了 didILiked(如虚拟字段,未存储在数据库中),如果 req.user 未定义,则它应该为 true/false 或 null。
有没有办法做到这一点?
【问题讨论】:
标签: node.js mongodb mongoose aggregation-framework