laravel のあるコントローラーのメソッドが別のコントローラーのメソッドを呼び出したい場合はどうすればよいですか?
例: AaaController.php
BbbController.php
BbbController の bbb() メソッドは AaaController の aaa() メソッドをどのように呼び出す必要がありますか?
これは、aaa メソッドでロジックを抽出していないことを示しています。orm はリポジトリに配置でき、論理操作はサービスに配置できます
これは通常はお勧めできません。
新しい AaaController を作成してメソッドを直接呼び出すだけではなく、なぜこれほど複雑なのでしょうか?依存関係の注入に対処する必要があるためです。
コントローラーBにコントローラーAのインスタンスを作成この方法でも使用可能ですが、合法かどうかはわかりません
(新しい AaaController ())->aaa();
BaseController を構築し、他の 2 つのコントローラーがこのコントローラーを共同で継承できます。いくつかのパブリック メソッドを BaseController に配置するか、ヘルパー ファイルを追加できます。
これを行う必要がある場合は、呼び出されるメソッドを静的メソッドとして定義できます。次に、クラス名が直接呼び出されます。ただし、これはお勧めしません
これは、aaa メソッドでロジックを抽出していないことを示しています。orm はリポジトリに配置でき、論理操作はサービスに配置できます
これは通常はお勧めできません。
リーリー新しい AaaController を作成してメソッドを直接呼び出すだけではなく、なぜこれほど複雑なのでしょうか?依存関係の注入に対処する必要があるためです。
コントローラーBにコントローラーAのインスタンスを作成
この方法でも使用可能ですが、合法かどうかはわかりません
(新しい AaaController ())->aaa();
BaseController を構築し、他の 2 つのコントローラーがこのコントローラーを共同で継承できます。いくつかのパブリック メソッドを BaseController に配置するか、ヘルパー ファイルを追加できます。
これを行う必要がある場合は、呼び出されるメソッドを静的メソッドとして定義できます。次に、クラス名が直接呼び出されます。ただし、これはお勧めしません