首页 > 解决方案 > Sailsjs 蓝图未捕获“beforeCreate”或“beforeUpdate”模型函数生成的错误

问题描述

当我从任何模型的 lifeCycle fn “beforeCreate” 中抛出错误时,蓝图(sails 的默认 api)不会将错误抛出到请求中。

当某些模型验证未通过时,蓝图会抛出错误 400 并显示错误,但是当我从 beforeCreate 中抛出错误时,这不会抛出 400 并且不会抛出相同的格式错误,并且我需要控制器中的相同错误响应(蓝图)

我正在使用 Sailsjs 1.0.1

//models/item.js

module.exports = {

  attributes: {
    nombre: { type: 'string', required: true },
    empresa: { model: 'empresa', required: true },
  },
  beforeCreate: async (values, proceed) => {
    let nameUsed = await Item.count({ nombre: values.nombre, empresa: values.empresa });
    if (nameUsed > 0) return proceed('ERROR, NAME ALREADY USED FOR THE CURRENT EMPRESA')
    return proceed()
  }

};

标签: node.jssails.js

解决方案


推荐阅读