Предположим, у нас есть схема, которая выглядит следующим образом:
const RandomSchema = new Schema({
name: String,
randomField: String,
subDoc: {
name: String,
refDoc: {
type: Schema.Types.ObjectId,
ref: 'OtherModel',
required: true,
},
},
}, options);
Наша OtherModel
имеет схему, которая выглядит следующим образом:
const OtherModel = new Schema({
name: String,
funFact: String,
}, options);
Из внешнего интерфейса моего приложения Я хотел бы запросить модель RandomSchema и вернуть все экземпляры этой модели, где subDoc.refDoc.funFact === someValue
.
Возможно ли это? Я знаю, что у нас есть способы заполнить эти поддельные документы при их возврате, но это происходит только после того, как были возвращены соответствующие документы, когда в этом случае нам нужно знать больше, чем просто идентификатор объекта refDo c.