#7365·sails

sails-disk 不支持 .transaction() 方法

作者: DominusKelvin创建于 2025年9月16日更新于 2025年9月16日

□ 问题

帆盘适配器不支持`.transaction ()'方法,这种方法在开发需要交易支持的应用程序时会产生问题.

□ 当前的行为

在试图使用 ".交易() " 帆盘时:

[JavaScript] 等待起帆. getDatastore (). 交易( async (db)) {{ // 交易逻辑

  • ;

这之所以失败,是因为帆盘缺乏`.交易() ' 方法的执行。

□ 预期行为

帆盘-磁盘应支持带有伪交易行为的`. 交易()'方法,允许同一交易API在开发(帆盘)和生产(帆盘-PostgreSQL,帆盘-MySQL)环境中一致工作。

□ 影响

- 开发时无法测试依赖交易的代码
- 迫使开发人员使用生产适配器,甚至用于当地发展
- 创造发展/生产均等问题

□ 建议的解决办法

在帆盘中采用伪交易方法:
- 提供相同的`.交易()'API接口
- 利用模拟状态管理来提高回滚能力
- 在适配器内保持交易隔离

这将使开发工作流程一致,同时保留了帆盘的轻量级.

内容来源: balderdashy/sails