mo3golom/laravel-service-skeleton

dev-master / 0.8.1.x-dev 2020-04-02 07:19 UTC

This package is auto-updated.

Last update: 2024-09-29 05:49:27 UTC


README

Laravel 仓库 - 这是用于 Laravel 5 的包,用于抽象数据库层。

安装

在控制台执行以下命令

composer require mo3golom/laravel-service-skeleton

使用

在控制台执行

php artisan services:skeleton SERVICE_NAME

将在 app/Services 文件夹中创建一个服务,具有以下结构

SERVICE_NAME
├── Database
|   ├── Migrations
|   ├── Models
|   ├── Repository
|   └── Seeds
├── Http
|   ├── Controller
|   ├── Middleware
|   └── Requests
├── Routes
|   └── api.php
└── SERVICE_NAMEServicesProvider.php

若要更改 Services 文件夹,请执行

php artisan vendor:publish

并将配置拖放到 /config 中

服务提供者视图

<?php 

namespace App\Services\_SERVICE_;

use Illuminate\Foundation\Support\Providers\RouteServiceProvider as ServiceProvider;

class _SERVICE_ServicesProvider extends ServiceProvider
{
    protected $namespace = 'App\Services\_SERVICE_\Http\Controller';

    public function boot()
    {
        if ($this->app->runningInConsole()) {
            $this->loadMigrationsFrom(__DIR__ . '/Database/Migrations');
        }

        parent::boot();
    }

    public function map()
    {
        $this->mapRoutes();
    }

    protected function mapRoutes()
    {
        \Route::middleware('api')
            ->prefix('api')
            ->namespace($this->namespace)
            ->group(base_path('_ROOT_/_SERVICE_/Routes/api.php'));
    }
}

api.php 路由文件视图

<?php

Route::middleware('auth:api')->prefix('v1')->group(function () {

});