Я пытаюсь передать запрос Mongoose в качестве параметра другой функции. По какой-то причине переменные, которые я отправляю как часть запроса, не передаются вместе. Это мой код:Передача значений paramater в запросе Mongoose
get: function(req, res) {
var my_query = {name: {$regex: req.body.name, $options: 'i'}};
user.find(my_query, function(err, users) {
if (err) return res.status(500).json({err});
else return res.status(200).json({users});
});
}
user.js:
find: function(my_query, next) {
User.find(my_query).exec(function(err, users) {
console.log(my_query); // prints { name: { '$regex': NaN, '$options': 'i' } }
if (err) return next(err, null);
else return next(null, users);
});
}
я получаю пустой массив, когда я запускаю этот код. Когда я заменяю запрос в модуле user.js
: { name: { '$regex': NaN, '$options': 'i' } }
, он работает отлично. Какие-либо предложения?
@ nem035 Да, извините, я что-то пытался и забыл удалить. Исправлена опечатка. – SalmaFG
Что касается вашей проблемы, вы говорите, что 'User.find ({name: {'$ regex': NaN, '$ options': 'i'}})' работает, но 'User.find (my_query)' , где 'my_query' передается как' {name: {'$ regex': NaN, '$ options': 'i'}} 'не работает? – nem035
@ nem035 Да, точно. – SalmaFG