Похоже, у вас есть прокси-объект, созданный с использованием прототипа. В этом случае вам придется «обновить» экземпляр, чтобы использовать его, как упоминал Рейнос.
Я думаю, вы ожидаете получить объектный литерал, а не прототипный класс. Что-то вроде:
module.exports.PollModel = {
findPolls : function (callback) { ... },
findById : function (id, callback) { ... },
updateById : function (id, body, callback) { ... }
}
Я бы лично использовал схему мангуста напрямую.
Mongoose использует объект Schema для выполнения запросов для этой конкретной модели, но если вы действительно хотите создавать и сохранять новые объекты этого типа схемы, вы хотите создать новый объект.
// Assume you've exposed the mongoose Poll schema directly
var Poll = require('./models').Poll;
// Create a new instance
var instance = new Poll();
// Valid
instance.save();
// Not valid
instance.find(function(err, docs){});
// Valid
Poll.find(function(err, docs){});
// Not valid
Poll.save();