Yiiでは、にアクセスする<app-host>/index.php?r=<mycontroller>/<myaction>
と、フレームワークはでコードの実行を開始しますprotected/controller/<MyController>Controller.php
そのコードを別のフォルダーに配置したいのですが、protected/anotherFolder
他のコントローラーはそのままにしておきます。どうやってするか?
よろしく
Yiiでは、にアクセスする<app-host>/index.php?r=<mycontroller>/<myaction>
と、フレームワークはでコードの実行を開始しますprotected/controller/<MyController>Controller.php
そのコードを別のフォルダーに配置したいのですが、protected/anotherFolder
他のコントローラーはそのままにしておきます。どうやってするか?
よろしく
開いて<app-host>/index.php
、編集して
//...
require_once($yii);
$app = Yii::createWebApplication($config);
$app->setControllerPath('protected/anotherFolder');
$app->run();
この投稿mdomba
のyiiフォーラムのおかげで、私たちが呼び出すアプリケーションの読み込み状態で-を使用して答えを見つけましたCWebApplication::controllerMap
Yii::app()->controllerMap['yourControllerName']='path.alias.to.your.controller.file.without.dotPHP';
controllerMapを使用できます-http://www.yiiframew ... ollerMap -detail
もし私があなたを手に入れたら、あなたはウェブロジックを異なる「フォルダ」、または(より簡単な方法で)モジュールに分割したいと思うでしょう。たとえば、すべての管理スタッフを別の場所に配置し、たとえばr = admin/usersを使用してこれにアクセスするには
giiマネージャーをアクティブにしている場合は、/ index.php?r = giiに移動して、モジュールを作成します。それでおしまい。次に、protected / modules / <module-name>
/ controllers /内にコントローラーを作成し、そのパスを使用してそれらを呼び出すことができます。もちろん、ビューもその中に保存されます
設定ファイルに追加できます
'controllerPath' => 'your_new_controller_path',
ビューパスと同じ
'viewPath' => 'path_to_template_folder',