84669 人が学習中
152542 人が学習中
20005 人が学習中
5487 人が学習中
7821 人が学習中
359900 人が学習中
3350 人が学習中
180660 人が学習中
48569 人が学習中
18603 人が学習中
40936 人が学習中
1549 人が学習中
1183 人が学習中
32909 人が学習中
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 に配置するか、ヘルパー ファイルを追加できます。
これを行う必要がある場合は、呼び出されるメソッドを静的メソッドとして定義できます。次に、クラス名が直接呼び出されます。ただし、これはお勧めしません