prolaxu/easy-curd

帮助您快速创建 CRUD 的包。

v0.2 2023-03-29 18:24 UTC

This package is auto-updated.

Last update: 2024-09-30 01:59:57 UTC


README

Laravel 包,通过提供创建 CURD API 所需的操作,以闪电般的速度自动化简单的 CRUD。

安装

使用以下命令安装 easy-crud

  composer require prolaxu/easy-curd

您可以在 Packagist 中找到此包:prolaxu/easy-curd

如何使用?

使用非常简单,您只需按照以下示例操作即可

假设我有 Post 模型、资源、请求和控制器,我可以快速创建 CRUD,如下所示

步骤 1

在模型上使用 CURD

...
use Prolaxu\EasyCrud\Traits\Crud;
...
class ModelName extends Model
{
    use Crud;
    ...
}

示例

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Prolaxu\EasyCrud\Traits\Crud;

class Post extends Model
{
    use HasFactory,Crud;

    protected $table = 'posts';
    protected $fillable = [
        'title',
        'body',
        'slug',
        'status',
    ];
}

步骤 2

创建请求和资源以获得更多控制:请求:用于请求规则。资源:用于响应返回规则。

php artisan make:resource PostResponse
php artisan make:resource Post/CreateRequest
php artisan make:resource Post/UpdateRequest

步骤 3

创建控制器。

示例

<?php

namespace App\Http\Controllers;

use App\Http\Requests\Post\UpdateRequest;
use App\Http\Requests\Post\CreateRequest;
use App\Http\Resources\PostResource;
use App\Models\Post;
use Prolaxu\EasyCrud\Controllers\BaseController;

class PostController extends BaseController
{
    public function __construct(){
        parent::__construct(
            Post::class,//model
            PostResource::class, // response
            CreateRequest::class, // create request
            UpdateRequest::class, // update request
        );
    }
}

步骤 4

创建路由。

Route::controller( PostController::class)->prefix('posts')->group(function (){
    Route::get('', 'index'); //list of items
    Route::post('', 'store'); // store the item
    Route::get('{id}', 'show');  //show one item
    Route::put('{id}', 'update'); // update one item
    Route::delete('delete', 'delete'); //delete multiple items
    Route::delete('{id}', 'destroy'); //delete one item
});

许可证

MIT

作者