3

ユーザーのアクセス許可に応じて特定のウィジェット/インクルードを表示するページを作成しようとしています。私は CodeIgniter と MVC にまったく慣れていません。

例。 私はカレンダーを持っています。これにはコントローラー、モデル、およびビューがあり、他のページに含める必要があります。このカレンダーと他の類似の「ウィジェット」を 1 つのページに表示したいと考えています。このページには現在、コントローラーとビューがあります。

別のコントローラーからコントローラーをロードするべきではないことはわかっていますが、それを回避する方法がわかりません。ヘルパーから複数のコントローラーをロードできますか? または何らかの形式のテンプレートが必要ですか?

ありがとう、

ジャッキー

4

2 に答える 2

2

あなたがCodeIgniterのモジュラー拡張機能を探しているように私には聞こえます。これにより、アプリケーションを相互に呼び出すことができるモジュールに分割できます。あなたの場合、他のモジュールから呼び出すことができるカレンダーモジュールがあります。

于 2011-07-27T22:15:23.250 に答える
1

あなたが探しているのは、Layoutsと呼ばれるものです。Codeigniter にはすぐに使用できる機能はありませんが、レイアウトは基本的に、(フロントコントローラー) リクエストを複数のアクションに委任しています。各アクションは独自に機能し、独自のビューが割り当てられています。

レイアウトは、これをすべて 1 つの出力にまとめます。

この方法論では、1 つのコントローラーを別のコントローラーから呼び出さないように注意することもできるため、互いに属していないコードを分離したり、一度に多くのことを行って混乱したりする可能性があります。

この議論はあなたにとって興味深いかもしれません: Codeigniter レイアウト? Codeigniter FAQにはそれについての詳細があり、より具体的には、ウィキのすべてのページのヘッダーとフッターとメニューがあります。

于 2011-07-27T15:26:13.837 に答える