3

Laravelを使用してアプリケーションを開発しています。しかし、アプリケーションのモジュール構造について疑問があります。

これが例です。

「特集アイテム」というモジュールが必要だとします。

これは、一部のコントローラに含める必要がある小さなモジュールです。

問題は、これを行う方法がわからないことです。これは、他のコントローラー内で呼び出される新しいコントローラーである必要がありますか?

これはモデルにすべきでしょうか?これはバンドルとして書くべきですか?

誰が最善のアプローチが何であるかについて何か考えを持っていますか?

4

4 に答える 4

7

コードをどこに配置するかについて賢明な決定を下せるようにするために心に留めておくべきことがありますが、好みの問題であるため、これに対する正しい答えがあるとは思いません。

モジュールのフットプリントは小さく、それ自体だけで機能しますか?

  • ライブラリを作成する

モジュールには独自のルートとビューが必要ですが、ライブラリは必要ありませんか?

  • アプリケーション コントローラーを作成する
  • Laravel ルートを使用する
  • バンドル コントローラーを使用する

モジュールには上記の両方が含まれていますか?

  • コントローラとライブラリを含むバンドルを作成する

それほど単純ではありません。他の要因も考慮に入れる必要があります。たとえば、モジュールに複数のコントローラーが必要な場合は、バンドルに記述したほうがよいでしょう。バンドルでは、バンドル ディレクトリ内に start.php ファイル以外は何も必要ないため、必要なものをオートローダーに登録します。このことから、すべてのモジュラー コードをバンドルでビルドすることが多くの人々の好みであることがわかります。

于 2012-12-27T13:36:54.103 に答える
0

ライブラリに入れてオートロードするのはどうですか?http://laravel.com/docs/models#libraries

任意のコントローラーで呼び出すことができるようにします。

于 2012-12-25T04:25:25.287 に答える
0

注目のアイテムのようなものは、おそらくデータベースへの呼び出しを行うでしょう。たとえば、getFeaturedItems と呼ばれる Product モデルにメソッドを作成します。次に、雄弁または流暢を使用して結果を取得します。

于 2012-12-25T06:11:02.857 に答える