Sails.js обрабатывает ошибки проверки атрибутов

В Sails.js можно использовать разные подключения к базе данных для моделей и легко менять базу данных (MySQL или MongoDB). Проблема возникает, когда я хочу отобразить ошибки проверки. Это мои коды:

Модель Groups.js

...
    connection: 'MysqlConnection', //or connection: 'MongodbConnection'
    attributes: {
        id: {
            type: 'string',
            unique: true
        },
        name: {
            type: 'string',
            required: true
        },
...

Контроллер GroupsController.js:

...
//add group to database
Groups.create(group, function (err, data) {
    if (err) {
        console.log(err);
        res.send('Error'); // is it possible to send only validation error
        return;
    } else {
        res.send(data);
    }
});
...

Должен ли я обрабатывать каждую ошибку проверки атрибута отдельно, можно ли отправить только ошибку проверки?

MySQL возвращает:

Error (E_VALIDATION) :: 1 attribute is invalid ...

MongoDB возвращает:

Error (E_UNKNOWN) :: Encountered an unexpected error ...

person torayeff    schedule 03.01.2015    source источник
comment
У меня точно такая же проблема. Вы можете сделать console.log(req.params.all()); и показать, что не так. В моем случае id не определен.   -  person Javier    schedule 04.12.2015


Ответы (1)


ты можешь попробовать:

      Model.catch(function(err) {
        var inspect = Object.keys(err)// [ "reason","invalidAttributes", ".."        ]
        console.log(  Object.keys(err.invalidAttributes) ) // ["name","etc.."]
      })

поймать ошибку

person Maxtermax    schedule 18.02.2016