Это уже немного сложно в CakePHP 3.x, где есть реальные события после того, как что-то зафиксировано, и где объекты параметров передаются на протяжении всего процесса сохранения / удаления, которые могут хранить информацию о транзакции, и даже там вы пришлось бы каким-то образом вызывать такой процесс самостоятельно, если бы вы вручную обернули операцию сохранения / удаления в транзакции.
Вы можете, например, попытаться реализовать выполнение вещей транзакционно в поведении, тогда ваши модели могут хранить ссылки на файлы для удаления в этом поведении на beforeDelete
, и поведение может отправлять события на вовлеченные модели после того, как вещи будут совершено, что-то вроде afterCommit
, которое ваши модели могут прослушивать, а затем удалять файлы.