MongoDB находит метод с переменными

#javascript #node.js #database #mongodb #find

#javascript #node.js #База данных #mongodb #Найти

Вопрос:

Пытаюсь выполнить поиск в моей базе данных MongoDB, используя имена переменных, не указывая точный поиск. Возможно ли это сделать? Независимо от того, как я пытаюсь отформатировать переменную, я не могу добиться успешного поиска. Я пытаюсь сделать что-то вроде нижней строки ниже

 let url3 = 'http://cs544.io/11jgry2';
const ret = await dbTable.find({"shortUrl" : "http://cs544.io/11jgry2"}); //Works
const ret = await dbTable.find({"shortUrl" : url3}); //Doesn't work
  

Ответ №1:

Используйте $eq, он задает условие равенства. Оператор $eq сопоставляет документы, в которых значение поля равно указанному значению.

Проверьте это this для дальнейшего объяснения и примеров

Ответ №2:

Теоретически, это должно сработать,

Но я предлагаю вместо этого взглянуть на использование $ eq.

Вот пример

 const ret = await dbTable.find( { shortUrl: { $eq: url3 } } );