laravel通用化的CURD的实现


Posted in PHP onDecember 13, 2019

说明

非常高效的处理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();

github地址

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
PHP3 safe_mode 失效漏洞
Oct 09 PHP
php一次性删除前台checkbox多选内容的方法
Sep 22 PHP
PHP使用imagick读取PDF生成png缩略图的两种方法
Mar 20 PHP
php实现批量下载百度云盘文件例子分享
Apr 10 PHP
PHP读取txt文本文件并分页显示的方法
Mar 11 PHP
PHP随机数 C扩展随机数
May 04 PHP
PHP怎样用正则抓取页面中的网址
Aug 09 PHP
Zend Framework入门教程之Zend_Db数据库操作详解
Dec 08 PHP
PHP5中使用mysqli的prepare操作数据库的介绍
Mar 18 PHP
laravel-admin的多级联动方法
Sep 30 PHP
laravel框架的安装与路由实例分析
Oct 11 PHP
laravel框架实现为 Blade 模板引擎添加新文件扩展名操作示例
Jan 25 PHP
Vagrant(WSL)+PHPStorm+Xdebu 断点调试环境搭建
Dec 13 #PHP
phpstudy后门rce批量利用脚本的实现
Dec 12 #PHP
PHP设计模式之数据访问对象模式(DAO)原理与用法实例分析
Dec 12 #PHP
PHP设计模式之建造者模式(Builder)原理与用法案例详解
Dec 12 #PHP
PHP设计模式之适配器模式(Adapter)原理与用法详解
Dec 12 #PHP
PHP学习记录之常用的魔术常量详解
Dec 12 #PHP
记Laravel调用Gin接口调用formData上传文件的实现方法
Dec 12 #PHP
You might like
php程序之die调试法 快速解决错误
2009/09/17 PHP
php google或baidu分页代码
2009/11/26 PHP
使用PHP实现密保卡功能实现代码<打包下载直接运行>
2011/10/09 PHP
如何用php生成扭曲及旋转的验证码图片
2013/06/07 PHP
深入apache host的配置详解
2013/06/09 PHP
PHP实现找出链表中环的入口节点
2018/01/16 PHP
Firefox outerHTML实现代码
2009/06/04 Javascript
js 数组实现一个类似ruby的迭代器
2009/10/27 Javascript
跟我学习javascript的全局变量
2015/11/16 Javascript
JavaScript高级程序设计(第三版)学习笔记6、7章
2016/03/11 Javascript
AngularJS基础 ng-show 指令简单示例
2016/08/03 Javascript
js学习笔记之事件处理模型
2016/10/31 Javascript
AngularJS的脏检查深入分析
2017/04/22 Javascript
vue中使用codemirror的实例详解
2018/11/01 Javascript
javascript-hashchange事件和历史状态管理实例分析
2020/04/18 Javascript
基于Python实现的扫雷游戏实例代码
2014/08/01 Python
200 行python 代码实现 2048 游戏
2018/01/12 Python
python如何获取当前文件夹下所有文件名详解
2019/01/25 Python
python实现矩阵打印
2019/03/02 Python
Python3.5面向对象程序设计之类的继承和多态详解
2019/04/24 Python
Python内存管理实例分析
2019/07/10 Python
浅析PEP572: 海象运算符
2019/10/15 Python
pytorch中使用cuda扩展的实现示例
2020/02/12 Python
Python tornado上传文件的功能
2020/03/26 Python
详解pandas绘制矩阵散点图(scatter_matrix)的方法
2020/04/23 Python
大学旷课检讨书
2014/01/28 职场文书
励志演讲稿范文
2014/04/29 职场文书
入党介绍人评语
2014/05/06 职场文书
竞争与合作演讲稿
2014/05/12 职场文书
挂牌仪式策划方案
2014/05/18 职场文书
优秀学生干部个人事迹材料
2014/06/02 职场文书
小学生志愿者活动方案
2014/08/23 职场文书
党的群众路线教育实践活动心得体会(企业)
2014/11/03 职场文书
汤姆叔叔的小屋读书笔记
2015/06/30 职场文书
SpringBoot实现quartz定时任务可视化管理功能
2021/08/30 Java/Android
JS数组去重详情
2021/11/07 Javascript