toanna / saf-laravel-toolkit
SAF 的 Laravel 开发者开发工具包
v1.3.4
2019-10-08 07:28 UTC
Requires
- php: >=7.1
- carmanuelz/php-remote-config: dev-master
- elasticsearch/elasticsearch: ^6.0
- francescomalatesta/laravel-circuit-breaker: ^0.1.0
- laravel/framework: >=5.5.0
- ruflin/elastica: ^6.0@dev
- squizlabs/php_codesniffer: *
- toanna/laravel-5-layer: >=1.2.0
README
SAF 的 Laravel 开发者开发工具包
开始使用
$ composer require toanna/saf-laravel-toolkit
命令
初始化文件夹结构
$ php artisan saf:init
文件夹结构
/app
/Abstraction
/ExternalServiceInterface
/RepositoryInterface
/Business
/BusinessService
/Common
/CircuitBreaker
/DomainModels
/Exceptions
/ExternalConfig
/Logging
/Dependency
/ExternalServices
/Repositories
/Providers
/Representation
/Console
/Http
/Controllers
/Api
/Auth
/Middleware
/Requests
Kernel.php
初始化 git 钩子
连接远程后,运行此命令以设置
$ php artisan saf:git-hooks-init
创建命令
创建一个抽象接口到 app/Abstraction/
$ php artisan saf:abstraction ExternalServiceInterface/IFileUploader
创建一个业务逻辑类到 app/Business/
$ php artisan saf:business CreateFileBL
创建一个业务服务类到 app/BusinessService/
$ php artisan saf:business_service CreateFileBS
创建一个控制器类到 app/Representation/Http/
$ php artisan saf:controller TestController
创建一个 API 控制器类到 app/Representation/Http/Api
$ php artisan saf:api_controller FileController
创建一个依赖类到 app/Dependency/
$ php artisan saf:dependency Repositories/SQLFileCreator
创建一个领域模型类到 app/Common/DomainModels
$ php artisan saf:domain_model File
创建一个 Eloquent ORM 类到 app/Dependency/Repositories/Eloquent/
$ php artisan saf:eloquent FileEloquent
创建一个异常类到 app/Common/Exceptions/
$ php artisan saf:exception ValidationException
创建一个表单请求类到 app/Representation/Http/Requests/
$ php artisan saf:request CreateFileRequest
创建一个资源到 app/Representation/Http/Resources/
$ php artisan saf:resource
创建一个 Artisan 命令到 app/Representation/Console/Commands/
$ php artisan saf:console AbstractionMakeCommand
常用库
Elastic Logger
示例在 app/config/logging.php
'stack' => [
'driver' => 'stack',
'channels' => ['daily', 'elastic'],
],
'elastic' => [
'driver' => 'custom',
'via' => Toanna\SAFLaravelToolkit\Common\Logging\ElasticLogger::class,
'host' => 'localhost',
'port' => 9200,
'level' => 'debug'
],
贡献者
- Thắng Lê thang.le@saf.com.vn
- Toàn Nguyễn toan.nguyen@saf.com.vn