Как прочитать данные из существующей коллекции mongodb и отобразить их в браузере, используя узел / express? - PullRequest
1 голос
/ 10 февраля 2020

У меня есть существующая база данных с именем 'mig', состоящая из коллекции с именем 'Employee', я пробовал следующий код, но он отправляет данные в необработанном формате json в браузер при открытии localhost: 3000

var express = require('express')
var assert = require('assert')
var bodyParser = require('body-parser')
var MongoClient = require('mongodb').MongoClient
var url = 'mongodb://localhost:27017/mig'
var app = express()

app.use(bodyParser.urlencoded({ extended: true }))

MongoClient.connect(url, { useNewUrlParser: true })
    .then(client => {
        const db = client.db('mig');
        const collection = db.collection('Employee');
        app.locals.collection = collection;
        app.listen(3000, () => console.log('REST API running on port 3000'));

        process.on('SIGINT', () => {
            client.close();
            process.exit();
        });

    }).catch(error => console.error(error));

app.get('/', (req, res) => {
    const collection = req.app.locals.collection;
    collection.find({}).toArray().then
    (response => res.status(200).json(response)).catch(error => console.error(error));
})

Мне нужно знать, как я могу отобразить данные этой коллекции в браузере в правильном формате html. За последние несколько дней я много искал, может быть, ключевые слова ошиблись или что-то вероятно. Пожалуйста, помогите мне с этой проблемой.

Ps - я не знаю, смогу ли я использовать mon goose, потому что схему для существующей коллекции будет очень трудно определить, так как она содержит 10000 строк против 1000 столбцов. Пожалуйста, попробуйте дать мне решение, которое будет очень полезно.

Спасибо.

Ответы [ 2 ]

2 голосов
/ 10 февраля 2020

Если вы хотите отправить html в браузер с вашими данными, интерполированными внутри, вам нужно использовать шаблонизатор. Усы и E JS - это хорошие варианты, совместимые с express, которые помогут вам сделать это.

Используя механизм шаблонов, вы можете вставить данные из своей базы данных. в файл и html перед отправкой в ​​браузер.

Надеюсь, это полезно

1 голос
/ 10 февраля 2020

@ Neelabh извините за публикацию ответа Python ранее. Вы можете использовать Mustache или Jade Двигатели. Пример для Jade Jade to Table

Пример таблицы Jade:

    div
     table
      thead
        tr
          th Col1
          th Col2
          th Col3
      tbody
        each srec in places
         tr
          td #{srec.item}
          td #{srec.item_desc}
          td #{srec.status_value}

Ссылка ссылки:

Примечание. Вы можете хочу уменьшить количество столбцов (с 1000) до фиксированных обязательных столбцов вроде 10-30. И есть опция выбора в пользовательском интерфейсе, чтобы выбрать определенные столбцы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...