Метод в модели:мангуст findByIdAndUpdate, не обновляя документ, кажется, получать правильные параметры
DistillerSchema.methods.update = function(o, u, cb){
this.model.findByIdAndUpdate(o, u, cb);
};
контроллер:
exports.update = function(req, res){
console.log('Bodddyyy!!!!!!!', req.body);
console.log('params', req.params);
Distiller.update(req.body._id, req.body, function(err, distiller){
console.log('update!!!!', distiller);
res.send({distiller:distiller});
});
};
console.log:
Bodddyyy!!!!!!! { _id: '573592584435639d18242d3c',
name: 'chewbacca333333',
email: '[email protected]',
photo: 'https://s3.amazonaws.com/whiskey-upload/distillers/9ec98f42-7d43-4be9-a372-2a0e90cd4f30',
__v: 0,
social:
{ facebook: 'https://www.facebook.com',
twitter: 'https://www.facebook.com',
instagram: 'https://www.facebook.com' },
whiskeys: [],
location: [],
timestamp: '2016-05-13T08:37:44.257Z' }
params { id: '573592584435639d18242d3c' }
update!!!! { ok: 0, n: 0, nModified: 0 }
Я не уверен, что случилось. Я передаю все правильные данные с клиентской стороны, и, согласно документации по mongoose, я чувствую, что передаю правильные параметры.
Он постоянно возвращается: {ОК: 0, п: 0, nModified: 0}
Может быть что-то с тем, как у меня есть метод в модели?
Кажется, плохая идея попробовать и определить собственный метод 'update' на схеме. Попробуйте присвоить этому методу другое имя. – JohnnyHK
Я просто думал то же самое. Похоже, что будет конфликт. – NoobSter
Кроме того, это должен был быть статический метод. Мне нужно больше взглянуть на концепции статических/методов. – NoobSter