devhridoy / l6modular
为 Laravel 6 设计的模块化模式生成器。它最初由 ArtemSchander 创建,我只是将其实现于 Laravel 6。
Requires
- php: >=7.2.0
- laravel/framework: >=6.0
This package is auto-updated.
Last update: 2024-09-10 07:51:26 UTC
README
此包使您能够使用模块化系统来使用 Laravel 6。您可以将具有自己的控制器、模型、视图、翻译和路由文件的模块简单地放入 app/Modules
文件夹,并继续使用它们。
注意
"此包最初由 artem-schander 创建",我只是修改了一些代码并将其实现于 Laravel 6
。谢谢。
文档
- 安装
- 入门
- 使用
安装
通过您的终端使用 Composer 安装此包是最好的方式。
从您的项目根目录运行以下命令
composer require devhridoy/l6modular
完成此操作后,只需将服务提供者添加到项目的 config/app.php 文件中即可。
服务提供者
Devhridoy\L6modular\ModuleServiceProvider::class
入门
内置的 Artisan 命令 php artisan make:module name [--no-migration] [--no-translation]
在 app/Modules
文件夹中生成一个可用的模块,并在必要时创建迁移/翻译。
自版本 1.3.0 以来,您可以使用多词命名的模块,例如 foo-bar
。
生成的模块将看起来是这样的
laravel-project/ app/ └── Modules/ └── FooBar/ ├── Controllers/ │ └── FooBarController.php ├── Models/ │ └── FooBar.php ├── Views/ │ └── index.blade.php ├── Translations/ │ └── en/ │ └── example.php ├── routes │ ├── api.php │ └── web.php └── helper.php
使用
生成的 RESTful Resource Controller
和相应的 routes/web.php
使得快速上手变得简单。在我的例子中,您可以通过在浏览器中打开 laravel-project:8000/foo-bar
来看到来自 Modules/FooBar/Views/index.blade.php
的输出。
1.0.0 更新版本针对 Laravel 6
您必须遵循模块文件夹的 upper camel case
命名约定。如果您有一个 Modules/foo
文件夹,您必须将其重命名为 Modules/Foo
。
此外,在 app/config/modules.php
文件中也有一些变化。现在您必须返回一个具有 enable
键的数组,而不是 list
。
许可证
L6 Modular 在 MIT 许可证 的条款下发布(有关详细信息,请参阅 LICENSE 文件)。