2

Yiiでモジュールを使用しようとしていて、モジュールのメソッドのメインコントローラー(SiteController)からアクセスしたい。Giiでモジュールを作成します。モジュール名はCarです。RequestController、モジュールCarでメソッド検索にアクセスしようとしています。

echo Yii::app()->Car->Request->search();

そしてYiiは私に話します

プロパティ「CWebApplication.carhire」が定義されていません。

別のコントローラーからモジュールのメソッドにアクセスする方法を知っている人はいますか?ありがとう

4

1 に答える 1

2

モジュールはアプリケーション スコープに入れられません。つまり、モジュールcomponents経由でアクセスできますが、経由でアクセスできます。Yii::app()->Yii::app()->getModule($moduleName)->

ただし、これはコントローラーでアクションを実行するのにはあまり役立ちません。モジュールの抽象化のポイントを完全に壊さずにアクセスすることも困難です。

bool.dev の回答本当に必要な場合は、私が見た最良の方法を次に示します

しかし、あなたが抱えている問題は、あなたのサイトの構造に根本的な問題があることを示している可能性があります. アプリ内の別の場所にあるモジュール コントローラー関数にアクセスする必要がある場合、それはモジュール内にあるべきではないのでしょうか?

于 2012-11-12T15:14:56.727 に答える