.find不是函数mongoose + nodejs + express

时间:2017-02-06 14:43:14

标签: javascript node.js mongodb express

我正在尝试用猫鼬做一个发现,但我得到了这个

  

“TypeError:Query.find不是函数”

我有这个型号:

//  file: ./models/request.js

var mongoose = require('mongoose'),
    Schema   = mongoose.Schema;

var dnSchema = new Schema({
    customerId: String,
    uuid: String,
    get_data: String,
    get_scores: String
});

dnSchema.index({ customerId: 1, time: -1 });

module.exports = mongoose.model('dN', dnSchema);

我有这个控制器

var mongoose = require('mongoose');
var dn  = mongoose.model('dn');

(...)
var getScores = exports.getScores = function(req, res) {
 var Query = new dn();
 console.log(Query)
 Query.find({}, function(err, example) {
    res.status(200).send(example)
 });
}

这个index.js

var mongoose = require('mongoose');

mongoose.connect(config.url, function(err, res) {
    if(err) {
        logger.error('Error connecting to Database ' + process.pid);
        throw err;
    }
});

var models = require('./models/request')(app, mongoose);
var controllers = require('./controller/request');

var router = express.Router();

router.route('/get_scores')
    .get(controllers.getScores);

app.use(router);
var httpServer = http.createServer(app);
httpServer.listen(config.port, function (){
    controllers.logIn();

});

我正在尝试做一个简单的.find,但我可以做到。

我希望你的帮助伙伴们!

谢谢!!

1 个答案:

答案 0 :(得分:0)

尝试在控制器中导入Schema并使用该模式。

var dn = require('path to schema file');

(...)
var getScores = exports.getScores = function(req, res) {
  dn.find({}, function(err, example) {
    res.status(200).send(example)
  });
}