Magento 모듈에서 작업 중이며 일련의 모델 저장을 롤백 할 수 있는지 알아야합니다.Magento 데이터베이스 트랜잭션 예외 및 롤백
admin/role
admin/user
core/website
core/store_group
core/store
mymodule/model1
mymodule/model2
내 문제는 이러한 모델의 예외를 던질 때마다, 내가 수동으로 삭제 MySQL을로 가서 필요가있다 : 기본적으로, 나는 다른 후 하나를 저장해야 내 모듈에서 여러 플러스 다섯 개 가지 모델을 가지고 저장된 모든 행 이것은 매우 비생산적입니다.
Magento에는 내 컨텍스트에서 액세스 할 수있는 롤백 절차가 없습니다. 예를 들어, Mage_Core_Model_Abstract
을보고 save 메소드에서 롤백 메커니즘이 모두 보호됩니다.
제 질문은 Magento에서 알고 있어야하는 데이터베이스 트랜잭션을 수행하기위한 몇 가지 모범 사례가 있습니까?
정확하게 작동했습니다. 감사. 또한 모델에 데이터를 추가해야하는 경우 트랜잭션을 다시 저장할 수 있음을 발견했습니다. 예를 들어 상점 모델에 대해 website_id 및 store_group_id를 설정해야합니다. 첫 번째 트랜잭션 저장 후 모델이 기본 키로 업데이트됩니다. 그런 다음 다시 저장하면 행이 업데이트됩니다. –