Получить запрос на данные в MongoDB с ExpressJs - PullRequest
0 голосов
/ 18 сентября 2018

Я новичок в nodejs / веб-приложении и пытаюсь получить данные из MongoDB.В моей mongoDB есть документы в коллекции "a"

{_id:("1"), "Question":"mcq1", "Answer":"one", "Keyword":"CLASS"}
{_id:("2"), "Question":"mcq2", "Answer":"two", "Keyword":"CLASS"}
{_id:("3"), "Question":"mcq3", "Answer":"three", "Keyword":"OVERLOAD"}
{_id:("4"), "Question":"mcq4", "Answer":"four", "Keyword":"OODP"}

. Я хочу извлечь данные "Question": field_value, "Answer": field_value, используя nodejs -> expressjs, через форму кнопки и текстового поля, используя уникальныйКлючевое слово и будет отображаться в виде таблицы, как показано ниже.

<tr>
<td><%= Question %></td>
<td><%= Answer %> </td>
</tr>

Мне удалось получить то, что я хочу, с оболочкой monogodb, используя

db.a.find({"Keyword":CLASS},{"Question":1,"Answer":1,_id:0})

В настоящее время коды нажатия текстовых полей и кнопок приведены ниже.

Input Keyword to search: <input type="text" id="searchBtn" value="">
<button type="button" onclick="alert(document.getElementById('searchBtn').value)">Click me!</button>

Как извлечь вопрос и ответ с помощью нажатия кнопки?
Используя db.a.find({"Keyword":CLASS},{"Question":1,"Answer":1,_id:0}) я хочу получить таблицу в виде

Вопрос, ответ, ключевое слово
mcq1, один, CLASS
mcq2, два, CLASS

1 Ответ

0 голосов
/ 19 сентября 2018

Если вы выполните запрос в БД на основе этого ключевого слова, вы получите вхождения в монго, поэтому вы можете заполнить поле формы (GET / POST) с помощью ввода и уже имеющейся кнопки.Это будет поймано в вашем экспресс-коде как маршрут, там вы можете реализовать некоторый базовый код, заполняющий ваши поисковые запросы, и возвращаемое значение будет представлять собой простые данные или массив, если несколько совпадений.

Это базовый поискчто один пользователь (Miqe) однажды научил меня здесь, сначала вам нужен запрос (или вы можете просто поставить его прямо там), а затем поиск в монго.Но обратите внимание, что ваша функция обратного вызова вернет результат, вот только console.log () после возврата значений вы можете присвоить их переменной и пройти через механизм шаблонов, отрисовывающий его в формате html в формате желания.

query = {username: username, password: password}
dbo.collection('Users').find(query, function(err, user){
  if(err) throw new Error(err);
  if(!user) 
    console.log('Not found');
  else 
    console.log('Found!');

})

Вот код, который нужно найти в коллекции с именем Users, вам все равно нужно присоединиться к маршруту и ​​установить соединение с БД.

Iоставлю ссылку, которая мне очень помогла!Документация на монго все еще хорошее начало.https://www.w3schools.com/nodejs/nodejs_mongodb_query.asp

...