• yii2 modules模块配置指南


    在Yii2 中模块是可以无限级嵌套的,也就是说,模块可以包含另一个包含模块的模块,我们称前者为父模块,后者为子模块, 子模块必须在父模块的yiibaseModule::modules属性中申明,例如:
    在Yii2的advanced版本的rest-api下建立嵌套模块,在forum模块(父模块)下嵌入admin模块(子模块)
    api下的modules的文件结构如下

    --api
    ----modules
    ------forum(父模块)
    --------Module.php
    --------controllers
    --------models
    --------admin(子模块)
    ----------Module.php
    ----------models
    ----------controllers
    

    父模块的配置

    forum下的Module.php需要修改init方法

     namespace apimodulesforum;
        
        class Module extends yiibaseModule
        {
            public $controllerNamespace = 'apimodulesforumcontrollers';
            public function init()
            {
                parent::init();
        
                $this->modules = [
                    'admin' => [
                        // 此处应考虑使用一个更短的命名空间
                        'class' => 'apimodulesforumadminModule',
                    ],
                ];
            }
        }
    

    子模块的配置

    admin下的Module.php

    namespace apimodulesforumadmin;
    
    class Module extends yiibaseModule
    {
        public $controllerNamespace = 'apimodulesforumadmincontrollers';
        public function init()
        {
            parent::init();
         //     Yii::configure($this, require(__DIR__ . '/config.php'));
        }
    }
    

    模块路由

    在嵌套模块中的控制器,它的路由应包含它所有祖先模块的ID,例如forum/admin/default/index 代表 在模块forum中子模块admin中default控制器的index操作。

  • 相关阅读:
    wmware虚拟机的克隆
    解决SecureCRT无法用非root账号登录ssh
    Docker容器操作
    Docker镜像操作
    Docker的安装和启动
    linux安装tomcat
    POJ 2456 Aggressive cows ( 二分搜索)
    POJ 1064 Cable master (二分查找)
    2008 APAC local onsites C Millionaire (动态规划,离散化思想)
    贿赂囚犯 Bribe the prisoners ( 动态规划+剪枝)
  • 原文地址:https://www.cnblogs.com/xiong63/p/7097484.html
Copyright © 2020-2023  润新知