我有两个实体:组织和应用程序。一个组织可以有多个应用程序。
const organization = mongoose.Schema(
{
name: {
type: String,
required: [true, 'Organization name is required.']
}, // min 1 max 255
// administrators get it from user table with org and role.
applications: [
// use populate in query
{
type: mongoose.Types.ObjectId,
ref: 'Application'
}
]
我正在尝试使用两个应用程序查询Organization,但它返回了一个空数组
const organizations = await Organization.find({
'applications._id': {
$all: [
'636bdf70bcd2d24005061023',
'6373ba91f53f95ca187809d6'
]
}
}).populate('applications');
我试着在MongoDB指南针中运行同样的表达式,它起作用了。我在这里做错了什么?
1条答案
按热度按时间h22fl7wq1#
根据您的模式模型,
applications
字段是ObjectID数组,而不是每个对象都具有_id
属性的对象数组。因此,它应该是
applications
,而不是applications._id
: