牛骨文教育服务平台(让学习变的简单)
博文笔记

【笔记】Yii2 - Gii使用:Module Generator

创建时间:2016-06-03 投稿人: 浏览次数:1907

打开Gii页面后,点击【Module Generator】的【Start >>】按钮,打开模块生成工具的页面,如下图所示:

在“Module Class”输入框中输入模块的类名,在“Module ID”输入框中输入模块的ID名称。模块的类名前要加上类的命名空间。如下图所示:

输入完成后点击“Preview”按钮,会显示要自动生成的目录和文件信息,如下图所示:

可以看到要生成3个文件:模块文件,控制器,和视图。点击“Generate”按钮,会自动生成这些文件,如下图所示:


生成文件后,查看提示信息,还需要配置config文件。在config中加上"modules"的属性,如下所示:

$params = require(__DIR__ . "/params.php");

$config = [
  ......
  "modules" => [
    "mgr" => [
      "class" => "appmodulesmgrMgrModule",
    ],
  ],

];

return $config;
打开浏览器输入模块的访问地址:http://ews-mars.com/yii2b/web/index.php?r=mgr


如果要添加模块的子模块,同样在Gii页面点击【Module Generator】的【Start >>】按钮,打开模块生成工具的页面,输入子模块的信息,如下图所示:

输入完成后点击“Preview”按钮,会显示要自动生成的目录和文件信息,如下图所示:

可以看到要生成3个文件:模块文件,控制器,和视图。点击“Generate”按钮,会自动生成这些文件,如下图所示:

生成文件后,查看提示信息,还需要配置config文件。因为是模块的子模块,我们不在项目的配置文件中添加,而是在模块中添加。在MgrModule文件中添加:

namespace appmodulesmgr;

/**
 * mgr module definition class
 */
class MgrModule extends yiiaseModule {
  /**
   * @inheritdoc
   */
  public $controllerNamespace = "appmodulesmgrcontrollers";

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

    // 从模块的配置文件config.php中加载配置来初始化模块
    Yii::configure($this, require(__DIR__ . "/config.php"));
  }
}
在模块mgr文件夹中添加config.php文件,将子模块rbac的信息添加上:

return [
  "modules" => [
    "rbac" => [
      "class" => "appmodulesmgrmodules
bacRbacModule",
    ],
  ],
];
在浏览器上输入:http://ews-mars.com/yii2b/web/index.php?r=mgr/rbac,如下图所示:

这样就可以使用子模块了。模块的完整性。

声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。