環境: CakePHP 1.3 CakePHPのModelクラスには直接トランザクションを制御するメソッドがない。そこで例えば次のようにAppModelにメソッドを定義する。 class AppModel extends Model { function begin() { return $this->getDataSource()->begin($this); } function commit() { return $this->getDataSource()->commit($this); } function rollback() { return $this->getDataSource()->rollback($this); } } しかしこの方法ではテストがやりにくい。明示的にトランザクションを制御したい時というのは、複数のテーブルにまたがる複雑なロジックを組むことが多いので