【发布时间】:2012-10-22 09:30:32
【问题描述】:
我在 yii 中创建了一个项目,我的默认控制器指向站点控制器。我想用其他一些来改变它,我可以在 yii 中指定默认控制器和操作。
【问题讨论】:
-
yii 中的默认控制器/第一个控制器是 站点控制器,因为它的视图是“站点”
-
在 config 'defaultController' => 'myController' 中试试这个
我在 yii 中创建了一个项目,我的默认控制器指向站点控制器。我想用其他一些来改变它,我可以在 yii 中指定默认控制器和操作。
【问题讨论】:
在config main.php中添加配置
return array(
'name' => 'Web Application',
'defaultController' => 'home',
......
);
【讨论】:
home/index.
更改默认控制器的完美解决方案。部分问题还在于更改默认操作。如果您设置了'defaultController' => 'home',,默认操作将是'index' (unless set otherwise),您可以在控制器中更改它,如下所示:
class HomeController extends CController
{
public $defaultAction = 'someotheraction';
public function actionSomeotheroaction()
{
}
}
【讨论】:
您可以在返回数组 protected/main.php 中添加任何位置
return array(
......
'defaultController' => 'index',
......
);
如果你在模块库中工作,那么你可以添加
'defaultController' => 'shop/index',
Shop 是模块,index 是控制器
【讨论】:
您可以在项目目录 protected/main.php 中将控制器设置为默认控制器 将此代码添加到数组中,例如 $configArray = array()
$configArray = array
(
'name'=>'Web Appname',
'defaultController'=>'index'
......
);
并在Controller中设置默认动作
class NameController extends AdminCoreController
{
public $defaultAction = 'index';
}
【讨论】: