yii2:模块

yii2:模块php

模块不一样于frontend/frontback单独的先后台单独的主题项目,模块不能单独部署,必须属于某个应用主体(如先后台:frontend/frontback)。web

模块置于module目录下,以demo为例:yii2

模块文件大体如上图,app

modules/ 

           demo/

                 controllers/DefaultController.php
                 views/default/index.php
                 DemoModule.php

  一、配置:frontend

将模块配置到config/web.php的文件配置中去,在配置文件中新增代码:yii

 'modules' => [          
           'demo' => [
                'class' => 'app\modules\demo\DemoModule',               
            ],

        ],

  

DemoModule.php:
DemoModule文件继承module类,并定于命名空间:
namespace app\modules\demo;

/**
 * demo module definition class
 */
class DemoModule extends \yii\base\Module
{
    /**
     * @inheritdoc
     */
    public $controllerNamespace = 'app\modules\demo\controllers';

    /**
     * @inheritdoc
     */
    public function init()
    {
        parent::init();

        // custom initialization code goes here
    }
}

  

DefaultController.php文件
DefaultController.php首页要定于命名空间:namespace app\modules\demo(模块名)\controllers;


namespace app\modules\demo\controllers;

use Yii;
use yii\web\Controller;

//use app\compon
/**
 * Default controller for the `demo` module
 */
class DefaultController extends Controller
{

    

    /**
     * Renders the index view for the module
     * @return string
     */
    public function actionIndex()
    {

    	echo "hello";exit;
    }
}

  

访问地址:xxx.com/demo(模块名)/default/indexspa

相关文章
相关标签/搜索