加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – Magento捕获异常并回滚数据库事务

发布时间:2020-12-13 16:37:07 所属栏目:PHP教程 来源:网络整理
导读:我正在使用Magento模块,需要知道是否可以回滚一系列模型保存.基本上,我有五个模型加上几个从我的模块,我需要一个接一个地保存: admin/roleadmin/usercore/websitecore/store_groupcore/storemymodule/model1mymodule/model2 我的问题是,每当这些模型抛出异
我正在使用Magento模块,需要知道是否可以回滚一系列模型保存.基本上,我有五个模型加上几个从我的模块,我需要一个接一个地保存:
admin/role
admin/user
core/website
core/store_group
core/store
mymodule/model1
mymodule/model2

我的问题是,每当这些模型抛出异常时,我需要进入MySQL并手动删除所有保存的行.这是非常无效的.

我很确定Magento没有可以在我的上下文中访问的回滚过程.例如,我查看了Mage_Core_Model_Abstract,在save方法中,回滚机制都受到保护.

所以,我的问题是,在Magento进行数据库交易有一些最好的做法,我应该知道吗?

我看到了核心代码中使用的以下内容,它看起来就像你订购的那样.
$transactionSave = Mage::getModel('core/resource_transaction');
$transactionSave->addObject($model_one)
$transactionSave->addObject($model_two)
$transactionSave->save();

core / resource_transaction对象允许您添加Magento对象,并对其进行批量保存.做一个尝试,我很乐意听到这样做或不会在你的意见中为你工作.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读