我一直在研究node.js + mongoose简单的应用程序,然而,出了点问题。我一直在根据这个网站的一些例子工作,但根本没有幸运。 但是,代码运行时没有从db返回任何记录(已填充,顺便说一下)。有人可以看看并给我一些帮助吗?我现在正在研究这项工作超过一天,但没有任何乐趣。
模型/ entidade.js
var mongoose = require('mongoose')
,Schema = mongoose.Schema
,ObjectId = Schema.ObjectId;
var entidadeSchema = new Schema({
cnpj: String,
razaoSocial: String,
nomeFantasia: String,
endereco: String,
unidades: [{ codigo: String, nome: String, endereco: String, ativo: {type: Boolean, default: true} }],
dataCriacao: { type: Date, default: Date.now },
cadastroAtivo: { type: Boolean, default: false },
});
module.exports = mongoose.model('Entidade', entidadeSchema);
路由/ entidades.js
var Entidade = require('../models/entidade.js');
exports.list = function(req, res) {
Entidade.find(function(err, entidades) {
console.log("route IN: %d records", entidades.length );
res.send(entidades);
});
};
最后, server.js
var express = require('express');
var app = express();
app.configure(function () {
app.use(express.logger('dev'));
app.use(express.bodyParser());
});
// connection to mongoDB
var mongoose = require('mongoose');
mongoose.connect('mongodb://127.0.0.1/ccidev');
var entidade = require('./routes/entidades');
app.get('/entidades/list', entidade.list);
app.listen(3000);
正如我所说,在运行应用程序时,我没有收到任何错误,但结果是空的。任何帮助表示赞赏。
谢谢和问候, 维尼
答案 0 :(得分:1)
根据documentation,Model.find()的第一个参数是条件 试试
Entidade.find({}, function(err, entidades) {});
<强>路由/ entidades.js 强>
var Entidade = require('../models/entidade.js');
exports.list = function(req, res) {
Entidade.find({}, function(err, entidades) {
console.log("route IN: %d records", entidades.length );
res.send(entidades);
});
};