В моей модели пользователя у меня есть что-то вроде этого:пользовательские ошибки в Sails ОРМ (ватерлинии) обратный вызов
register: function(data, next) {
User.findOne({email:data.email}).exec(function findOneUserCB(err, user) {
if (!err && user) {
return next(new Error('Email already exist.'));
}
// other things
});
}
Я в основном пытаюсь вернуть пользовательскую ошибку, когда пользователь находится, но там нет ни одного другая ошибка от ватерлинии. Но это не работает, паруса жалуются, что TypeError: Cannot call method 'toString' of undefined
.
Так что я пытался подражать ошибку ватерлинии:
//...
var error = {
code: 'E_UNIQUE',
details: 'Invalid',
model: 'user',
invalidAttributes: {
hase: []
},
status: 400
}
return next(error);
//...
Это работает, но он чувствует себя очень хака. Разве это не лучший способ передать пользовательскую ошибку из обратного вызова запроса? Я не мог найти никакой документации по этой теме