DoctrineのAPIが言うように:
EntityRepository は、エンティティを取得するための一般的なメソッドとビジネス固有のメソッドを備えたエンティティのリポジトリとして機能します。
このクラスは継承用に設計されており、ユーザーはこのクラスをサブクラス化して、エンティティを見つけるためのビジネス固有のメソッドを使用して独自のリポジトリを作成できます。
しかし、エンティティを保存するためのビジネス ロジックを配置する適切な場所はどこでしょうか?
- エンティティ自体に正しいコンストラクターを配置しますか?
- リポジトリにも入れますか?
- 新しいエンティティを挿入することは、データを入力できるようにする「フォーム」に非常に関連しているため、多かれ少なかれコントローラーにあるはずですか?
- コントローラーのヘルパークラスを作成して、ヘルパークラスによって作業が行われ、コントローラーを爆破しないようにしますか?
- この質問を書いているときに、他に何か思い浮かびませんでしたか?
コントローラーを爆破することから遠く離れた解決策を好みます。現在、どこに配置すればよいかわからないため、さまざまなコントローラーによって呼び出されるヘルパー クラスを作成しました。