Php 我们可以在yii中指定默认控制器和操作

Php 我们可以在yii中指定默认控制器和操作,php,yii,Php,Yii,我已经在yii中创建了一个项目,并且我的默认控制器指向站点控制器。我想用一些其他的方法来更改它,我可以在yii中指定默认控制器和操作。在config main.php中添加配置 return array( 'name' => 'Web Application', 'defaultController' => 'home', ...... ); 更改默认控制器的完美解决方案。部分问题还在于更改默认操作。如果您已经设置了'defaultController'=

我已经在yii中创建了一个项目,并且我的默认控制器指向站点控制器。我想用一些其他的方法来更改它,我可以在yii中指定默认控制器和操作。

在config main.php中添加配置

return array(
    'name' => 'Web Application',
    'defaultController' => 'home', 
    ......
);

更改默认控制器的完美解决方案。部分问题还在于更改默认操作。如果您已经设置了
'defaultController'=>'home',
默认操作将是
'index'(除非另有设置)
,您可以在控制器中更改此操作,如下所示:

class HomeController extends CController
{

  public $defaultAction = 'someotheraction';

  public function actionSomeotheroaction()
  {

  }

}

您可以在返回数组protected/main.php中添加任意位置

return array(
    ......
    'defaultController' => 'index', 
    ......
);
如果您在模块库中工作,则可以添加

'defaultController' => 'shop/index',

Shop是module,index是controller

您可以在project目录protected/main.php中将controller设置为默认controller 在数组中添加此代码,如$configArray=array()

并在控制器中设置默认操作

class NameController extends AdminCoreController
{
    public $defaultAction = 'index'; 
}

yii中的默认控制器/第一个控制器是站点控制器,因为它的视图是“站点”,请在配置“defaultController”=>“myController”中尝试此选项。您还可以指定一个操作以及控制器名称,例如,
主页/索引
class NameController extends AdminCoreController
{
    public $defaultAction = 'index'; 
}