Yii框架2.0的模块
2024-08-28 21:31:05
模块是个独立的软件单元,也是又控制器,视图,模型组成的,也可以有自己的布局。但他必须属于某个应用下,不能独立存在。
其中模块的控制器,视图和应用的控制器和视图使用基本相同,不作赘述,下面说说模块的使用。首先可以通过前面说的Gii来生成一个模块,然后配置模块,再web.php 配置文件里加入下面的东西。
[
'modules' => [
'admin' => [
'class' => 'app\modules\admin\Module',
// ... 模块其他配置 ...
],
],
]
在访问的时候就要比应用多一级目录了,就是模块id这一级。
在代码中获取模块分三种情况。
$module = MyModuleClass::getInstance(); //MyModuleClass对应的是模块类
// 获取ID为 "forum" 的模块
$module = \Yii::$app->getModule('forum'); // 获取处理当前请求控制器所属的模块
$module = \Yii::$app->controller->module;
引导启动:下面的配置表示debug模块在每个请求下都运行。
[
'bootstrap' => [
'debug',
], 'modules' => [
'debug' => 'yii\debug\Module',
],
]
最后说明下,模块是可以嵌套的。
其实模块也是为了提高代码的重用性。一些常用特性,如用户管理,评论管理,可以开发成模块, 这样在相关项目中非常容易被重用。
最新文章
- 一步步开发自己的博客 .NET版(9、从model first替换成code first 问题记录)
- Java多线程与并发库高级应用-面试题
- c# 连接Mysql数据库
- Linux Socket编程
- html5学习笔记4--API Range对象(一)
- Spring 依赖注入控制反转实现,及编码解析(自制容器)
- [HIve - LanguageManual] LateralView
- wordpress在Linux nginx下权限设置
- [杂题]CSUOJ1413 Area of a Fractal
- 如何解决Failed to retrieve MSVC Environment from XXXXXXXX
- js中级小知识2
- CF949D Curfew
- 在ASP.NET MVC 框架中调用 html文件及解析get请求中的参数值
- dynamic load jar and init spring
- 通过html文件生成PDF文件
- HDU 4666 最远曼哈顿距离
- 【LeetCode】93. Restore IP Addresses
- bzoj 2212 Tree Rotations
- Mac 10.12安装FTP工具FileZilla
- push到github报错解决方法