khaledneam / module-generator
一个用于生成模块结构的Laravel包。
v1.0.1
2024-08-31 21:43 UTC
Requires
- php: >=7.3
- illuminate/support: ^7.0|^8.0|^9.0|^10.0|^11.0
README
一个用于快速生成模块化组件(如控制器、模型、视图、仓库和服务)的Laravel包。此包有助于在Laravel应用程序中创建模块化结构,使代码更易于组织和维护。
特性
- 为控制器、模型、请求、路由、视图、迁移、测试、提供者和服务创建目录。
- 使用基本模板生成服务提供者、控制器、视图、路由、仓库和服务文件。
- 自动在
config/app.php
中注册服务提供者。 - 自动将模块路由包含在
routes/web.php
中。 - 更新
helpers.php
文件以包含module_path
函数。
安装
-
通过Composer安装包
composer require khaledneam/module-generator dev-main --dev
-
确保您也在Laravel项目的根目录中添加了
Modules
目录 -
如果您在应用目录中没有
helpers.php
,请创建一个空文件 -
更新composer.json
{ "autoload": { "psr-4": { "Modules\\": "Modules/" } }, "files": [ "app/helpers.php" ] }
然后,更新Composer的自动加载文件
composer dump-autoload
使用方法 要创建一个新模块,请使用以下Artisan命令
php artisan make:module ModuleName
示例
php artisan make:module Blog
这将创建一个名为Blog的新模块,其结构如下
Modules/ Blog/ Controllers/ Models/ Requests/ Routes/ Views/ Migrations/ Tests/ Providers/ Repositories/ Services/
生成的文件
Service Provider: Modules/ModuleName/Providers/ModuleNameServiceProvider.php Controller: Modules/ModuleName/Controllers/ModuleNameController.php View: Modules/ModuleName/Views/index.blade.php Route File: Modules/ModuleName/Routes/web.php Repository: Modules/ModuleName/Repositories/ModuleNameRepository.php Service: Modules/ModuleName/Services/ModuleNameService.php
重要提示
1.Register the Service Provider:
请确保您将新创建的模块的服务提供者添加到config/app.php中的提供者数组中
'providers' => [ // Other Service Providers Modules\ModuleName\Providers\ModuleNameServiceProvider::class, ],
贡献
Feel free to fork the repository and submit pull requests. Any contributions are welcome.