您好,请问一下 vendor/fancyecommerce/fec_admin/controllers/ 下的文件 如何进行重写。谢谢!。
使用controllerMap
1.新建本地配置文件:@appadmin/config/fecshop_local_modules/Fecadmin.php,内容如下:
@appadmin/config/fecshop_local_modules/Fecadmin.php
<?php /** * FecShop file. * * @link http://www.fecshop.com/ * @copyright Copyright (c) 2016 FecShop Software LLC * @license http://www.fecshop.com/license/ */ return [ 'fecadmin' => [ 'class' => '\fecadmin\Module', 'controllerMap' => [ 'index' => [ 'class' => 'appadmin\local\local_modules\fecadmin\controllers\IndexController', ], ], ], ];
2.新建文件 @appadmin\local\local_modules\fecadmin\controllers\IndexController.php
@appadmin\local\local_modules\fecadmin\controllers\IndexController.php
内容如下:
<?php /** * FecShop file. * * @link http://www.fecshop.com/ * @copyright Copyright (c) 2016 FecShop Software LLC * @license http://www.fecshop.com/license/ */ namespace appadmin\local\local_modules\fecadmin\controllers; use Yii; use yii\helpers\Url; /** * @author Terry Zhao <2358269014@qq.com> * @since 1.0 */ class IndexController extends \fecadmin\controllers\IndexController { public function actionIndex() { echo 1;exit; $this->layout = "dashboard.php"; return $this->render('index'); } }
访问后台,截图:
重写成功,controller的重写,是通过Yii2的controllerMap进行的
好好看文档: http://www.fecshop.com/doc/fecshop-guide/develop/cn-1.0/guide-fecshop-rewrite-func.html#9-yii2-controllermap-controller
请改一下标题, 把 fec_admin重写问题 改成 如何重新fec_admin下的controller文件
fec_admin重写问题
如何重新fec_admin下的controller文件
标题把问题描述清楚,方便后面人来搜索问题
@Terry #2楼 classMap可以是可以但是不能继承啊
@dionyang #3楼 说错了,是controllerMap,上面的实现都是 controllerMap的实现
基于 controllerMap是可以继承的,