laravel通用化的CURD的实现
吾爱主题
阅读:146
2021-09-23 16:08:00
评论:0
说明
非常高效的处理laravel中curd的操作
安装
composer require shencongcong/laravel-curd ~1.0
laravel项目的 config/app.php 注册 ServiceProvider
?1 2 3 4 5 6 7 8 | 'providers' => [ // ... Shencongcong\LaravelCurd\LaravelCurdServiceProvider:: class , ], 'aliases' => [ // ... 'LaravelCurd' => Shencongcong\LaravelCurd\Facade:: class , ], |
使用
?1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | 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(); |
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:https://segmentfault.com/a/1190000021271798
声明
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。