1

私が欲しいのは、コンテンツがモジュールのテンプレートに属している間に、メイン サイトのメニュー、フッター、およびヘッダーを持つことです。では、どれをどのように行うことができるのでしょうか?

  • メイン アプリケーション テンプレート (ビュー) から、モジュールに属するサブテンプレート (レイアウトではなくビュー) を呼び出します。

また

  • モジュール テンプレート (ビュー) から、メイン アプリケーションに属するテンプレートを呼び出します

モジュールが自己完結型のアプリケーションであることはわかりましたが、それをメイン アプリケーションに接続する方法はありますか? メソッドrenderはこのメカニズムを提供していないようです。

回答例が必要です。

編集

わかりました、少し検索した後。モジュールのビューから次のようにできることがわかりました。

$this->render("//view_folder/a_view")

二重スラッシュ "//" を使用すると、view_folder/a_view.php の下にあるメイン アプリケーションのビューが呼び出されます。

$this->render("/view_folder/a_view")

この同じモジュール内のビューを呼び出します。

メインビューがモジュールビューまたはモジュール間のビューを呼び出す方法があるかどうかをまだ探しています。

4

2 に答える 2

1

アプリケーションビューまたはコントローラーからモジュールビューを呼び出すには

$this->render("application.modules.moduleName.views.folderName.fileName");
于 2013-03-01T08:57:01.057 に答える
0

レンダリングが機能する方法のため、メインビューがモジュールビューを呼び出すことができない可能性があります(Yiiはレンダリングパーシャルから開始し、レイアウトファイルまで機能します。

ただし、レンダリングをよりクリエイティブにする必要がある場合は、テーマシステムを調べてください。少し奇妙になりますが(何が起こっているのかを理解する最も簡単な方法は、XDebugのようなデバッガーを使用することです)、多くのオプションがあります。

于 2013-02-28T05:17:16.037 に答える