[英]Mongoose model is not returning data
我正在尝试建立模型,但是页面上没有数据渲染(使用车把视图引擎)。
我在app.js文件中具有以下内容:
// Mongoose setup
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/nickinumbers');
然后这是我为需要返回的数据设置的模型,这是一个nickinumbers.js文件:
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var NickiNumberSchema = new Schema({
number: {type: 'String', required: true},
firstName: {type: 'String'}
});
var NickiNumber = mongoose.model('Nickinumber', NickiNumberSchema);
module.exports = NickiNumber;
最后,我的index.js路由器文件包含:
var express = require('express');
var router = express.Router();
var NickiNumber = require('../models/nickinumbers');
router.get('/', function(req, res) {
NickiNumber.find(function(err, nums) {
if (err) return console.error(err);
res.render('index', {title: 'Users', nums: nums});
});
});
module.exports = router;
我没有在服务器或控制台上看到任何错误,也无法弄清楚为什么它不起作用。 任何帮助表示赞赏!
在查找功能中, 第一个参数是查询条件,然后应用回调 。
因此,您应该使用查询条件{}
来获取所有记录或可以应用您的查询。 因此应使用NickiNumber.find({}, function(...
查询应类似于:
var express = require('express');
var router = express.Router();
var NickiNumber = require('../models/nickinumbers');
router.get('/', function(req, res) {
NickiNumber.find({}, function(err, nums) {
if (err) return console.error(err);
res.render('index', {title: 'Users', nums: nums});
});
});
module.exports = router;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.