db.History.find({'_file.project': 'someproject')
.populate('_file', 'name reference project')
.sort(sortField || '-created')
.limit(max || 64)
.exec(this);
Здесь я пытаюсь найти все документы, которые соответствуют заполненному полю из ссылки _file. Кажется, не работает. Что-то вроде этого возможно вообще?Mongoose запрос населенного поля
Я мог бы дублировать поле проекта этому объекту, как обходное решение для запросов, но я бы предпочел, конечно.
Спасибо. Поэтому, чтобы быть уверенным, что для запроса коллекции History на основе проекта мне нужно будет добавить поле проекта, дублируя его из модели File? Извлечение всех документов, а затем фильтрация впоследствии не является вариантом, так как коллекция History, возможно, очень велика. –
@ 0x80 Правильно, или получите все документы «Файл» с соответствующим «проектом», а затем используйте запрос '$ in' в' History', используя значения '_id' из первого запроса. – JohnnyHK
Я понял. Приятно знать, что есть два варианта. Благодаря! –