smony / module
1.1.0
2024-09-29 20:39 UTC
Requires
- php: ^8.0
- illuminate/support: ^11.0
- spatie/laravel-package-tools: ^1.0
README
本包提供了一个简单的方法来创建和管理Laravel 11中的模块。它提供了一种模块化架构,允许开发人员将功能分离成独立的模块,使应用更易于扩展和维护。
特性
- 创建模块:使用命令轻松生成新模块。
- 管理模块状态:通过
enabled_modules.json
文件启用或禁用模块。 - 自动注册路由:为每个模块自动加载Web和API路由。
- 版本支持:通过
module.json
文件跟踪模块版本。 - 迁移支持:自动为模块注册和运行迁移。
- 自定义模块目录:您可以通过
module.php
配置文件设置模块的存储目录。 - 查看所有模块:使用命令列出所有模块及其状态和版本。
安装
-
将包添加到您的
composer.json
文件中composer require smony/module
-
发布配置文件
php artisan vendor:publish --tag=config
-
使用内置命令创建您的第一个模块
php artisan make:module {ModuleName}
这将创建一个新模块,包括其结构、路由、控制器、迁移等。
基本用法
创建模块
要创建新模块,请使用以下命令
php artisan make:module {ModuleName}
这将在Modules
目录内(或自定义目录,如果已配置)创建以下结构
Modules/
ModuleName/
Controllers/
Routes/
Database/
Providers/
module.json
查看所有模块
您可以使用以下命令列出所有模块、其状态和版本
php artisan module:list
此命令将显示一个包含每个模块信息的表格。
启用或禁用模块
模块通过位于根目录的enabled_modules.json
文件进行管理。要禁用模块,只需将其状态设置为false
。
{ "ModuleName": true, "AnotherModule": false }
自定义模块目录
默认情况下,模块创建在Modules
目录内。您可以通过更新module.php
配置文件来更改此设置。
未来计划
- 为模块创建添加更多可自定义的命令。
- 改进版本系统和兼容性检查。
- 添加测试以增强包的稳定性。
- 添加更多功能,如模块化中间件和更高级的路由。
贡献
请随时为此项目做出贡献!Fork,创建功能分支,并提交拉取请求。
许可
本包是开源软件,采用MIT许可证。