說明
非常高效的處理laravel中curd的操作
安裝
composer require shencongcong/laravel-curd ~1.0
laravel專案的 config/app.php
註冊 ServiceProvider
'providers' => [
// ...
Shencongcong\LaravelCurd\LaravelCurdServiceProvider::class,
],
'aliases' => [
// ...
'LaravelCurd'=> Shencongcong\LaravelCurd\Facade::class,
],
使用
use Event
use App\Model\Test;
1. 增加(add)
// 增加資料處理如需要處理業務加上這段程式碼,預設將laravel的request請求中的資料傳入(沒有業務處理則省略)
$arr = ['id'=>1,'name'=>'hlcc']; //處理好的資料
Event::listen("curd:filterData", function($m, $data) use($arr){
return $arr;
});
//增加邏輯前面如需要處理業務加上這段程式碼(沒有業務處理則省略)
Event::listen("curd:beforeAdd", function($m, $data){
//todo
});
// 增加邏輯後面如需要處理業務加上這段程式碼(沒有業務處理則省略)
Event::listen("curd:afterAdd", function($m,$data){
//todo
});
// Test 是Model
\LaravelCurd::make(Test::class)->add();
// update、list、detail、delete、restore 等event事件從原始碼中檢視
2. 修改(update)
\LaravelCurd::make(Test::class)->update();
3. 列表(list)
\LaravelCurd::make(Test::class)->list($pageSize,$withTrashed);
$pageSize 預設是0 不分頁 2 表示每頁展示2條
$withTrashed 預設是true, 表示軟刪除的不展示, false 表示軟刪除的也展示出來
4. 詳情(detail)
\LaravelCurd::make(Test::class)->detail();
5. 刪除(delete)
\LaravelCurd::make(Test::class)->delete($hasForce);
$hasForce 預設是false 表示軟刪除 true 表示硬刪除
6. 軟刪除恢復(restore)
\LaravelCurd::make(Test::class)->restore();
本作品採用《CC 協議》,轉載必須註明作者和本文連結