Node.js + Mongoose - 出了什么问题?

时间:2013-05-23 16:12:59

标签: node.js mongodb rest express mongoose

我一直在研究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);

正如我所说,在运行应用程序时,我没有收到任何错误,但结果是空的。任何帮助表示赞赏。

谢谢和问候, 维尼

1 个答案:

答案 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);
    });
};