【发布时间】:2016-11-04 22:33:34
【问题描述】:
我只是试图返回在子文档(管理器)数组中找到 req.user._id 的所有文档(站点)。
用户可以管理多个站点,所以我需要一种方法来列出所有这些关联的站点。
Site.find({}).elemMatch('managers', {_id: req.user._id}).exec((err, sites) => {
if (err) {
console.log(err)
return res.status(500).send('Something went wrong');
}
return res.json(sites)
});
我试过Mongoose elemMatch 没有运气。 我无法在任何地方的文档中找到它,但它似乎是一个可以运行的简单查询。
(已编辑)这是一个示例架构和文档:
import mongoose from 'mongoose';
var Schema = mongoose.Schema;
const SiteSchema = new Schema({
city: {
type: String
},
siteRef: {
type: String
},
managers: [{
type: Schema.ObjectId,
ref: 'User'
}],
});
export default mongoose.model('Site', SiteSchema);
【问题讨论】:
标签: mongoose