Laravel: トランザクション境界

※ まだ模索中

  • やはりUseCasesの中に置き、ここでDB::beginTransaction();→DB::commit();するしかなさそう。
    • リクエスト単位でのコネクションの維持が保たれているはず。できていなかったらコネクタを引き回す必要がある。
  • UseCasesに置くとDBクラスがUseCasesの中に紛れ込み、さりとてRepositoryの中に置くとロジックがRepositoryの中に入り込む。DBがロジックと保存の両方の仕組みを持つから仕方ないのだが、トランザクションは本当にレイヤアーキテクチャ泣かせ。