学习一个框架时,默认控制器是一个必须了解的构成,只有这样才能更好的了解框架,在今后的工作中才能更好的理清思路和原理,在Yii2中的默认控制器是siteController.php,新建的modules(modules今后会讲)的默认控制器是DefaultController.php,如果在开发中我们碰到需要修改默认控制器的需求,可以参照下面的方法。
第一种
直接修改源码,找到/vendor/yiisoft/yii2/web/Application.php下的 public $defaultRoute = ‘site’; 将site修改为想要改的控制器名称就可以了,注意是小写。
第二种
默认情况下我们是不会直接修改源码的,修改源码不利于框架的升级和迁移,因此我推荐用第二种方法。
全局修改,找到/common/config/main.php,在$config=[]中增加一行
[wppay]
‘defaultRoute’ => ‘site’, //默认控制器,注意需要小写
//修改site为想要的控制器就可以啦。
若是要对后台(/backend/config/main.php)或者前台(/frontend/config/mian.php)修改,只需要修改对应目录下的main.php文件即可。
通常控制器controller中的默认方法都是index,有时候我们想修改为自己的方法,只需要在controller增加一行代码
class SiteController extends Controller { public $defaultAction = 'list';//这样默认控制器的方法就成为了list }
[/wppay]