1

Yiiでは、にアクセスする<app-host>/index.php?r=<mycontroller>/<myaction>と、フレームワークはでコードの実行を開始しますprotected/controller/<MyController>Controller.php

そのコードを別のフォルダーに配置したいのですが、protected/anotherFolder他のコントローラーはそのままにしておきます。どうやってするか?

よろしく

4

4 に答える 4

6

開いて<app-host>/index.php、編集して

//...
require_once($yii);
$app = Yii::createWebApplication($config);
$app->setControllerPath('protected/anotherFolder');
$app->run();
于 2011-11-02T13:02:49.923 に答える
5

この投稿mdombaのyiiフォーラムのおかげで、私たちが呼び出すアプリケーションの読み込み状態で-を使用して答えを見つけましたCWebApplication::controllerMap

Yii::app()->controllerMap['yourControllerName']='path.alias.to.your.controller.file.without.dotPHP';

controllerMapを使用できます-http://www.yiiframew ... ollerMap -detail

于 2011-11-03T04:47:24.893 に答える
3

もし私があなたを手に入れたら、あなたはウェブロジックを異なる「フォルダ」、または(より簡単な方法で)モジュールに分割したいと思うでしょう。たとえば、すべての管理スタッフを別の場所に配置し、たとえばr = admin/usersを使用してこれにアクセスするには

giiマネージャーをアクティブにしている場合は、/ index.php?r = giiに移動して、モジュールを作成します。それでおしまい。次に、protected / modules / <module-name>/ controllers /内にコントローラーを作成し、そのパスを使用してそれらを呼び出すことができます。もちろん、ビューもその中に保存されます

于 2011-11-02T11:15:34.547 に答える
3

設定ファイルに追加できます

'controllerPath' => 'your_new_controller_path',

ビューパスと同じ

'viewPath' => 'path_to_template_folder',
于 2014-03-05T11:23:43.660 に答える