使用mongoose可以在没有选择链接的情况下填充时排除字段吗?
在这种情况下,我需要省略作者电子邮件和散列密码:
.populate(ratings, { path: 'reviews.author', model: 'User' }, function(err, ratings) {
...
});
答案 0 :(得分:2)
尝试以下方法;
Model.find(...)
.populate({
path: 'reviews.author',
model: 'User',
select: '-email -password'
})
.exec(callback);
这将排除email
和password
字段。
答案 1 :(得分:1)
在填充选项中使用select
属性:。
例如,如果您的用户具有name
和email
属性,则可以选择以下内容:
.populate(ratings, { path: 'reviews.author', model: 'User', select: 'name email' }, function(err, ratings) {
...
});