【问题标题】:where we can specify default controller and action in yii我们可以在 yii 中指定默认控制器和操作
【发布时间】:2012-10-22 09:30:32
【问题描述】:

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

【问题讨论】:

  • yii 中的默认控制器/第一个控制器是 站点控制器,因为它的视图是“站点”
  • 在 config 'defaultController' => 'myController' 中试试这个

标签: php yii


【解决方案1】:

在config main.php中添加配置

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

【讨论】:

  • 您还可以指定一个动作以及控制器名称,例如home/index.
【解决方案2】:

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

class HomeController extends CController
{

  public $defaultAction = 'someotheraction';

  public function actionSomeotheroaction()
  {

  }

}

【讨论】:

    【解决方案3】:

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

    return array(
        ......
        'defaultController' => 'index', 
        ......
    );
    

    如果你在模块库中工作,那么你可以添加

    'defaultController' => 'shop/index',
    

    Shop 是模块,index 是控制器

    【讨论】:

      【解决方案4】:

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

      $configArray =  array
      (
          'name'=>'Web Appname',
          'defaultController'=>'index'
          ......
      );
      

      并在Controller中设置默认动作

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

      【讨论】:

        猜你喜欢
        • 2016-04-03
        • 2013-04-22
        • 1970-01-01
        • 2013-11-04
        • 1970-01-01
        • 2018-11-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多