Есть модель Documents
, в ней хранится поле user_id
тип ObjectID
. Мне нужно превратить эту ID в модель, для этого я попробовал использовать так:
Model.find(query) .populate('user_id', 'name')
Все нормально работает, но теперь мне нужно, используя, mongoose-middleware
применить функцию поиска, получается вот так:
let options = {}; options.filters.keyword = { fields: ['documentName', 'user_id.name'], term: req.query // req.query = 'John' } Documents.find(query) .populate('user_id', 'name') .keyword(options) .page(options, function (err, docs) { if (!err) { res.json(docs); } else { return res.status(400).send({'Error'}); } });
И функция поиска по строке, не ищет в модели которую должен предоставить .populate()
.
Как мне превратить поле user_id
в модель, и потом используя mongoose-middleware
а именно функцию .keyword(options)
найти с ее помощью в user_id
которая должна стать моделью User
после populate()
поле User.name
?