2016-01-17 5 views
1

я определил пользовательский тип, и я пытаюсь вернуть все записи из Монго, содержащихся в указанной коллекции:foo.find (...) execFind не является функцией - модель схемы мангуст

Participant.js

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

var participantSchema= new Schema({ 
    email: String, 
}); 

module.exports = mongoose.model('Participant', participantSchema, 'participants') 

api.js

var express = require('express'); 
var router = express.Router(); 
var mongoose = require('mongoose'); 
var Participant = require('../models/Participant'); 

router.get('/all', function(req, res) { 
    var participant = mongoose.model('Participant'); 
    //var participant = new Participant(); 
    console.log(participant); 
    participant.find().execFind(function (arr,data) { 
     res.send(data); 
    }); 
}); 

module.exports = router; 

Но из-за что-то подозрительное, моя модель не распространяется (я предполагаю, что прототип по умолчанию)

participant.find(...).execFind is not a function 

TypeError: participant.find(...).execFind is not a function 
    at /Users/bogdan/private/appName/routes/api.js:13:24 

Любая помощь высоко ценится ... Благодаря

+0

Попробуйте вызвать '' exec' '(http://mongoosejs.com/docs/api.html#query_Query-exec) вместо 'execFind'. – JohnnyHK

+0

спасибо, добавьте комментарий, и, может быть, вы могли бы объяснить мне, в чем разница: p –

+2

'execFind' был удален в одном из релизов 3.x, не совсем точно, когда. Во всяком случае, он был заменен на 'exec'. – JohnnyHK

ответ

4

execFind был заменен exec назад в одном из выпусков 3.x от Мангуста.

Итак, теперь вы должны позвонить exec вместо execFind.

Смежные вопросы