0

私はかなり長い間 codeigniter のモジュールについて読んでいて、それに飛び込むことにしました。各モジュールは個別の「MVC」であるため、保守、追加などは簡単ですが、適切な実装を理解するのに少し助けが必要です。

まず、具体的には、元のモジュラー拡張 hmvc サイトの行の説明をお願いします

「モジュラー分離のみを使用するには、HMVC を使用せずに、コントローラーは CodeIgniter コントローラー クラスを拡張します。」

これはどういう意味ですか?誰かがその意味と目的を説明できれば、それは本当に役に立ちます。

また、HMVC、モジュラー拡張、分離などのもう少し概念的な説明があれば素晴らしいでしょう。モジュールをいつ拡張するか、それらを分離するか、およびこれが何を意味するかを決定する方法など。

4

1 に答える 1

2

https://bitbucket.org/wiredesignz/codeigniter-modular-extensions-hmvc/wiki/Home

などの HMVC 機能を使用するにはModules::run()、コントローラーで MX_Controller クラスを拡張する必要があります。

HMVC を使用せずにモジュラー分離のみを使用するには、コントローラーは CodeIgniter コントローラー クラスを拡張します。

これが意味することはModules::run()、アプリのどこからでも (他のモジュールを含めて) 呼び出すことができる をコントローラーで利用できるようにする場合は、そのコントローラーで MX_Controller クラスを次のように拡張する必要があるということです。

class Foobar extends MX_Controller {}

MX_ControllerModular Extensions パッケージの基本コントローラーです。MX_Controller次のように、それ自体が extends である他のコントローラーを拡張することも選択できます。

// Base controller
class Module_Controller extends MX_Controller {}

// Actual controller
class Blog extends Module_Controller {}

Modules::run()ビューパーシャルを返すように設計されています

この機能が必要ない場合 (おそらく必要ないでしょう)、モジュールのコントローラーで別のことを行う必要はありません。

class Foobar extends CI_Controller {}
class Foobar extends MY_Controller {} // etc.

このコンテキストでの「モジュール」は、それぞれが独自のモデル、ビュー、コントローラーなどを備えた単なるミニ CI アプリケーションです。コードを整理しておくのに役立ち、無関係なコンポーネントを分離する能力が向上します。理論的には、どの CI アプリケーションもモジュールになることができ、その逆も可能です。

于 2012-10-05T13:37:25.973 に答える