erfanshk / laravel-layered-logic
分层仓库、服务和接口
v0.0.1
2024-07-30 09:35 UTC
Requires
- php: ^8.2
- illuminate/console: ^11
- illuminate/contracts: ^11
- illuminate/http: ^11
- illuminate/support: ^11
Requires (Dev)
- orchestra/testbench: 9.x-dev
- phpunit/phpunit: ^11.0.1
README
开发中 - 测试版发布
一个简单的包,用于为laravel创建仓库、服务及其对应的接口。
支持
Laravel ^11.0
如何安装
只需运行以下命令,一切就绪。
composer require erfanshk/laravel-layered-logic
工作原理
LayeredLogicInitServiceProvider会在您的laravel应用中注册,附带一个简单的命令
php artisan make:layered User
它将创建以下文件
- App
- Layers
- Controllers
- UserController
- Requests
- UserRequest
- Resources
- UserResource
- Collection
- UserCollection
- Repositories
- UserRepository
- Interfaces
- UserRepositoryInterface
- Services
- UserService
- Interfaces
- UserServiceInterface
- Controllers
- Layers
它还将在发布后的LayeredLogicServiceProvider中注册仓库和服务接口作为单例
App\Providers\LayeredLogicServiceProvider
绑定数组位于
config\layered.php
运行
php artisan make:layered {model}
它会自动在应用容器中注册。现在您可以在应用的任何地方通过注入UserServiceInterface使用您预先创建的UserService。
使用此包您将获得什么?
这完全取决于您的编程风格。LayeredLogic的主要目标是给laravel模型和控制器带来抽象。它还使创建和注册这样的功能变得简单且耗时更少。
开发
如果您有任何改进包的想法,我会非常乐意听到您的意见。