2017-02-06 5 views
0

Я пытаюсь сделать находку с мангуста, но я получаю эту.find не является функцией мангуст + nodejs + экспресс

"TypeError: Query.find is not a function"

У меня есть эта модель:

// 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, но я могу это сделать.

Я надеюсь, что ваши помощники помогут!

Спасибо!

+0

Я вижу в вашей модели 'mongoose.model («дН», dnSchema)' и в контроллере 'mongoose.model («дп»)' Это может быть просто проблема капитала –

ответ

0

Попробуйте импортировать схему в контроллер и использовать ее.

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

(...) 
var getScores = exports.getScores = function(req, res) { 
    dn.find({}, function(err, example) { 
    res.status(200).send(example) 
    }); 
} 
Смежные вопросы