Download the PHP package ifui/webman-module without Composer
On this page you can find all versions of the php package ifui/webman-module. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package webman-module
Webman Module 应用模块插件(社区版)
基于
Webman
的一款应用模块插件,与普通插件的主要区别在于它是一款面向生产环境下的应用级解决方案,例如问答、博客、新闻等应用程序
介绍
ifui/webman-module
是一个 webman
插件,它可以使用模块化、搭积木的方式来管理你的应用程序。
一个模块就像是一个应用,该插件严格参照官方的 应用插件说明 规范开发。
相比于普通插件的一大好处是内置支持了 测试
功能,可以方便快捷的测试应用程序在实际应用场景下的情况。
安装
版本升级
快速上手
1.创建模块
执行:php webman module:create
模块名应遵循PSR4
规范,这里不作过多限制
按照操作提示输入相应的内容即可,将会创建如下目录格式
2. 启动 webman
服务,并访问默认的应用模块URL
- 启动
webman
服务php start.php start
- 使用浏览器访问
/app/apple/index
(其中apple
是你新建的模块名) - 看到: hello webman module 问候提示语则表示插件已成功运行
接下来和开发一个webman
项目体验基本一致
配置说明
模块的配置文件都在模块根目录下的 module.json
文件内
命令介绍
模块命令
1. 启动模块 module:start
2. 暂停模块 module:stop
3. 查看模块列表 module:list
4. 创建一个模块 module:create
常用命令
其中
--module
亦可以不填,系统会提示选择对应的模块,输入对应的序号即可
1. 创建一个模型文件 module:make-model
将会创建 /plugin/apple/app/model/Post.php
文件
2. 创建一个控制器文件 module:make-controller
将会创建 /plugin/apple/app/controller/Admin/Post.php
文件
3. 创建一个中间件文件 make-middleware
将会创建 /plugin/apple/app/middleware/LimitVisitMiddleware.php
文件
4. 创建一个测试文件 module:make-test
将会创建 /plugin/apple/tests/unit/AppleTest.php
文件
数据库迁移命令
主要使用了数据库迁移工具 Phinx
,
Phinx
项目地址:https://github.com/cakephp/phinx
官方中文文档地址:https://tsy12321.gitbooks.io/phinx-doc/content/
使用数据库迁移命令前,请确保webman
根目录下的 config/plugin/ifui/webman-module/phink.php
配置是否正确
1. 创建一个迁移脚本 module:phink-create
迁移脚本命名应该保持 驼峰命名法
将会创建 /plugin/apple/database/migrations/20220818084023_create_post.php
2. 执行迁移脚本 module:phink-migrate
Migrate 命令默认运行执行所有脚本,可选指定环境 -e
,比如 -e dev
可以使用 --target
或者 -t
来指定执行某个迁移脚本
3. 回滚之前的迁移脚本 module:phink-rollback
指定回滚环境 -e dev
使用 --target
或者 -t
回滚指定版本迁移脚本,指定版本如果设置为0则回滚所有脚本
可以使用 --date
或者 -d
参数回滚指定日期的脚本
4. 创建数据填充文件 module:phink-seed-create
命名格式使用驼峰法
将会创建 plugin/apple/database/seeds/PostSeeder.php
文件
5. 执行数据填充命令 module:phink-seed-run
默认 module:phink-seed-run
命令会执行所有 seed
如果你想要指定执行一个,只要增加 -s
参数后接 seed
的名字
使用说明
创建一个路由
在 route
文件夹下可以看到内置了 admin.php
api.php
web.php
只要是在 route
文件夹下的 php
文件都会被执行
这里需要注意的是 module.json
中的 urlPrefix
参数将会影响这里,当 urlPrefix
为空时会影响全局路由。
比如在 /plugin/apple/route/api.php
这时使用浏览器访问 /app/apple/hello
即可
使用配置
插件的配置与普通 webman
项目一样,不过插件的配置一般只对当前插件有效,对主项目一般无影响。
使用方式:config('plugin.apple.app.name')
,其中 apple
为模块名,app
为 配置文件名
其他注意事项请参考官方文档:https://www.workerman.net/doc/webman/plugin/app.html#配置文件
模块插件安装与卸载
应用插件安装时只需要将插件目录拷贝到{主项目}/plugin
目录下即可,需要reload
或restart
才能生效。
卸载时直接删除{主项目}/plugin
下对应的插件目录即可。
如何在插件内部安装 composer
拓展包
需要
ifui/webman-module
版本 >= 1.0.3
插件从 1.0.3
版本开始已经内置该功能,只需要在应用模块根目录下执行 composer
相关命令
插件将自动引入应用模块下的拓展包文件
其他说明
该项目将紧随 webman
的更新而更新,其中肯定还有不少需要完善的地方,欢迎大家提 PR
有问题请联系邮箱: [email protected]