sails.js - 在(几乎)相同的创建中遇到了来自 Waterline 的意外错误
问题描述
运行以下代码以创建新的数据库 (PostgreSQL 11.3) 行:
const supplier = await Supplier.create(
Object.assign({}, entityData, {
last_activity_date: sails.services.datehelper.GetTimeNow(),
account: supplierParams.supplier,
monitored: !!activeRegistry,
verified: true
})
);
error: Error (E_UNKNOWN) :: Encountered an unexpected error
at new WLError (invoice-portal/node_modules/waterline/lib/waterline/error/WLError.js:25:15)
at invoice-portal/node_modules/waterline/lib/waterline/model/lib/defaultMethods/save.js:188:17
at invoice-portal/node_modules/waterline/node_modules/async/lib/async.js:52:16
at invoice-portal/node_modules/waterline/node_modules/async/lib/async.js:550:17
at invoice-portal/node_modules/waterline/node_modules/async/lib/async.js:544:17
at _arrayEach (invoice-portal/node_modules/waterline/node_modules/async/lib/async.js:85:13)
at Immediate.taskComplete (invoice-portal/node_modules/waterline/node_modules/async/lib/async.js:543:13)
at runCallback (timers.js:789:20)
at tryOnImmediate (timers.js:751:5)
at processImmediate [as _immediateCallback] (timers.js:722:5)
解决方案
我在 invoice-portal/node_modules/waterline/lib/waterline/model/lib/defaultMethods/save.js 中添加了一些额外的日志记录(最终在正确的位置)以捕获所有保存的数据,这不是供应商的创建失败但插入发票行项目(在创建/更新供应商后发生)。
一些时间/相关性故障使 Sails 在创建供应商后抛出错误(可能在交易结束时)为什么我在看错误的地方......修复发票项目数据的验证错误解决了这个问题!
推荐阅读
- php - How to access relation of relation in blade
- android - getNetworkOperator 和 getActiveNetwork 是否足以检查 Android 设备是否具有电话网络连接?
- vba - Word VBA Find and move on
- annotations - Itext PDF 5.5 在单击链接时导航到文本实例
- python-3.x - 发送多个 json 对象时,线程池挂在 json.loads 上
- bash - Difference between ">& log" and ">& log&"
- c++ - C++ 将对象传递给函数
- rust - How do I move out of a struct field that is an Option?
- javascript - 我该如何处理这个 zip 文件?为登陆页面聘请了一名网络开发人员 - 未提供任何说明
- python - 记录抽象基类的属性?