• yii2笔记: 模块(module)


    官方文档

    http://www.yiiframework.com/doc-2.0/guide-structure-modules.html

    自己的一些理解:

    application和console本质上也都是module

    我们建立的module实质上都是application的子模块

    module里加载特定配置

    Module.php

    <?php
    
    namespace appmodules	estmod;
    
    /**
     * testmod module definition class
     */
    class Module extends yiiaseModule
    {
        /**
         * @inheritdoc
         */
        public $controllerNamespace = 'appmodules	estmodcontrollers';
    
        /**
         * @inheritdoc
         */
        public function init()
        {
            parent::init();
            Yii::configure($this, require(__DIR__ . '/config.php'));
    
            // custom initialization code goes here
        }
    }
    

      

    config.php,这里和config/web.php的原理是一样的。

    <?php
    return [
        'components' => [
            'db' => require(__DIR__ . '/db.php'),
        ],
        'params' => [
            'adminEmail' => 'testmod@example.com',
        ],
    ];
    

      

    控制器里使用模块的配置

            print Yii::$app->params['adminEmail']; // application的参数
            print $this->module->params['adminEmail']; // 当前模块的参数
            print $this->module->db->createCommand("SELECT COUNT(1) FROM testmod")->queryScalar(); // 当前模块的组件
    

      

    视图里使用模块的配置

    <?= $this->context->module->params['adminEmail'] ?>
    

      

  • 相关阅读:
    dijkstra算法模板 -- 最短路
    0-1背包
    POJ 1456-Supermarket(贪心+并查集)
    CodeForces 556C
    CodeForces
    POJ 2253-Frogger(Floyd变形)
    POJ 1251-Jungle Roads(最小生成树)
    HDU 1846-Brave Game(巴什博弈)
    HDU 1233-还是畅通工程(经典最小生成树)
    51Nod 1649-齐头并进(最短路dijkstra)
  • 原文地址:https://www.cnblogs.com/zergling9999/p/6081833.html
Copyright © 2020-2023  润新知