4myth/laravel-tools

laravel框架工具

安装: 770

依赖: 0

建议者: 0

安全: 0

星标: 0

关注者: 1

分支: 0

开放问题: 0

语言:CSS

2.0.0 2024-02-02 22:49 UTC

This package is auto-updated.

Last update: 2024-09-26 05:18:45 UTC


README

laravel框架工具。对开发API应用很有用。支持JS框架如vuejs & vuetify。所有文档正在建设中。

安装

使用composer

composer require 4myth/laravel-tools

发布

提供者

php artisan vendor:publish --provider="Myth\LaravelTools\Providers\ServiceProvider"

配置

php artisan vendor:publish --tag=4myth-tools-config

迁移

php artisan vendor:publish --tag=4myth-tools-migrations

视图

php artisan vendor:publish --tag=4myth-tools-views

语言

php artisan vendor:publish --tag=4myth-tools-lang

模型

php artisan vendor:publish --tag=4myth-tools-models

公开资产

php artisan vendor:publish --tag=4myth-tools-assets

工具中间件

  • 将阿拉伯数字转换为英文。
  • postman 用于创建Postman文档。
  • permission 用于为路由设置权限。只有auth中间件
将阿拉伯数字转换为英文

编辑文件 app/Http/Kernel.php

use Myth\LaravelTools\Http\Middleware\ArToEnMiddleware;

protected $middleware = [
    ...Your Middleware
    ArToEnMiddleware::class
]
Postman文档示例

定义你的路由。例如,在 routes/api.php

Route::group(['middleware' => ['postman']], function(Router $router){
    your routes here
});

编辑 app/Http/Kernel.php 以在内核中定义路由中间件。

use Myth\LaravelTools\Http\Middleware\PostmanMiddleware;

protected $routeMiddleware = [
    ...Your Middleware
    'postman' => PostmanMiddleware::class,
]
权限示例

定义你的路由。例如,在 routes/api.php

Route::group(['middleware' => ['auth:sanctum', 'permission']], function(Router $router){
    Route::get('route-path', [UserController::class, 'example'])->name('example');
    Route::get('route-path', [UserController::class, 'example'])->name('Model.DeleteFile');
    Route::get('', [UserController::class, 'index'])->name('User.index');
});

权限的名称取决于路由名称。例如:exampleUser.indexModel.DeleteFile

编辑 app/Http/Kernel.php 以在内核中定义路由中间件。

use Myth\LaravelTools\Http\Middleware\PermissionMiddleware;

protected $routeMiddleware = [
    ...Your Middleware
    'permission' => PermissionMiddleware::class,
]

工具命令

  • php artisan myth:postman Postman API文档。只有具有 postman 中间件的路由
  • php artisan myth:js-lang 将语言文件导出到JS
  • php artisan myth:model 为模型创建CRUD

Laravel文件系统

此工具使用laravel文件系统 config/filesystems.php

类型:rootappsetuplogsmediapdfexcelqr

'disks' => [
    ... your disks

    'root' => [
        'driver' => 'local',
        'root'   => base_path(),
        'throw'  => false,
    ],

    'app' => [
        'driver' => 'local',
        'root'   => app_path(),
        'throw'  => false,
    ],

    'logs' => [
        'driver' => 'local',
        'root'   => storage_path('logs'),
        'throw'  => false,
    ],

    'setup' => [
        'driver' => 'local',
        'root'   => resource_path('setup'),
        'throw'  => false,
    ],

    'media' => [
        'driver'     => 'local',
        'root'       => storage_path('app/public/media'),
        'url'        => env('APP_URL').'/storage/media',
        'visibility' => 'public',
        'throw'      => false,
    ],

    'pdf' => [
        'driver'     => 'local',
        'root'       => storage_path('app/public/pdf'),
        'url'        => env('APP_URL').'/storage/pdf',
        'visibility' => 'public',
        'throw'      => false,
    ],

    'excel' => [
        'driver'     => 'local',
        'root'       => storage_path('app/public/excel'),
        'url'        => env('APP_URL').'/storage/excel',
        'visibility' => 'public',
        'throw'      => false,
    ],

    'qr' => [
        'driver'     => 'local',
        'root'       => storage_path('app/public/qr'),
        'url'        => env('APP_URL').'/storage/qr',
        'visibility' => 'public',
        'throw'      => false,
    ],
]