从MongoDB获取数据并显示在前端

我刚开始学习NodeJS作为我的应用程序的后端,但这是我第一次使用服务器端技术。

我试图build立一个简单的应用程序,这是一个我想插入数据到数据库(mongodb),并获得数据显示在前端的forms。 我正在使用快速句柄。

数据被成功保存到数据库,但是当我试图从数据库中获取数据显示在前端没有任何反应。

有谁知道我的代码可能是错的?

谢谢!!

//代码从这里开始

var express = require('express'); var router = express.Router(); var mongoose = require('mongoose'); var assert = require('assert'); var url = 'mongodb://felipe:teste@ds033125.mlab.com:33125/form'; mongoose.connect(url); /* GET home page. */ router.get('/', function(req, res, next) { res.render('index'); }); 

//将数据插入数据库(MONGODB)

 router.post('/insert', function(req, res, next) { var Schema = mongoose.Schema; var itemSchema = new Schema({ nome: String, sobrenome: String, nacionalidade: String, email: String }); var CreateItem = mongoose.model('CreateItem', itemSchema); var item = new CreateItem({ nome: req.body.getNome, sobrenome: req.body.getSobrenome, nacionalidade: req.body.getNacionalidade, email: req.body.getEmail }); item.save(function(err) { if (err) throw err; console.log(item.nome + ' was saved!'); }); res.redirect('/'); console.log(item.nome + ' ' + item.sobrenome + ' was saved!'); }); 

//从数据库中获取数据并显示在前端

 router.get('/', function(req, res, next) { res.render('index'); }); router.get('/get-data', function(req, res, next) { var resultArray = []; mongoose.connect(url, function(err, db) { assert.equal(null, err); var cursor = db.collection('createitems').find(); cursor.forEach(function(err, doc) { assert.equal(null, err); resultArray.push(doc); }, function() { db.close; res.render('index', {items: resultArray}); }); }); res.redirect('/'); }); 

// HTML将显示数据的位置

 {{# each items}} <tr> <div class="col-md-3"> <td class="data">{{ this.nome }}</td> </div> <div class="col-md-3"> <td class="data">{{ this.sobrenome }}</td> </div> <div class="col-md-3"> <td class="data">{{ this.nacionalidade }}</td> </div> <div class="col-md-3"> <td class="data">{{ this.email }}</td> </div> </tr> {{/each}}