smony / module

1.1.0 2024-09-29 20:39 UTC

This package is auto-updated.

Last update: 2024-09-29 20:40:29 UTC


README

本包提供了一个简单的方法来创建和管理Laravel 11中的模块。它提供了一种模块化架构,允许开发人员将功能分离成独立的模块,使应用更易于扩展和维护。

特性

  • 创建模块:使用命令轻松生成新模块。
  • 管理模块状态:通过enabled_modules.json文件启用或禁用模块。
  • 自动注册路由:为每个模块自动加载Web和API路由。
  • 版本支持:通过module.json文件跟踪模块版本。
  • 迁移支持:自动为模块注册和运行迁移。
  • 自定义模块目录:您可以通过module.php配置文件设置模块的存储目录。
  • 查看所有模块:使用命令列出所有模块及其状态和版本。

安装

  1. 将包添加到您的composer.json文件中

    composer require smony/module
  2. 发布配置文件

    php artisan vendor:publish --tag=config
  3. 使用内置命令创建您的第一个模块

    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许可证。