登录  /  注册
博主信息
博文 7
粉丝 0
评论 0
访问量 15059
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
Laravel Observer (ORM 观察器)
冷雨画桥
原创
1385人浏览过

Observer

  1. //注册观察器
  2. App\Providers\AppServiceProvider.php;
  3. class AppServiceProvider extends ServiceProvider
  4. {
  5. public function boot(){
  6. $this->addModelLog();
  7. }
  8. public function addModelLog(){
  9. User::observe(Observer::class);
  10. }
  11. }
  12. App\Observers\Observer.php
  13. <?php
  14. namespace App\Observers;
  15. use Illuminate\Database\Eloquent\Model;
  16. use App\Jobs\OrmObserver;
  17. class Observer{
  18. 插入前
  19. public function creating(Model $model){
  20. }
  21. //插入后
  22. public function created(Model $model){
  23. }
  24. //修改前
  25. public function updating(Model $model){
  26. }
  27. //修改后
  28. public function updated(Model $model){
  29. }
  30. //删除前
  31. public function deleting(Model $model){
  32. }
  33. //删除后
  34. public funtion deleted(Model $model){
  35. }
  36. public funtion ObserverJob(){
  37. OrmObserver::dispatch(json_encode($data))->onConnection('redis')->onQueue('ObserverQueue');
  38. }
  39. }
  40. ?>
  41. App\Job\OrmObserver;
  42. <?php
  43. namespace App\Jobs;
  44. use Illuminate\Bus\Queueable;
  45. use Illuminate\Contracts\Queue\ShouldQueue;
  46. use Illuminate\Foundation\Bus\Dispatchable;
  47. use Illuminate\Queue\InteractsWithQueue;
  48. use Illuminate\Queue\SerializesModels;
  49. use Illuminate\Support\Facades\Log;
  50. use Modules\Crm\Models\CrmOrmSqlLog;
  51. class OrmObserver implements ShouldQueue
  52. {
  53. use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
  54. protected $data = [];
  55. public function __construct($data){
  56. $this->data = json_decode($data)
  57. }
  58. public function handle(){
  59. }
  60. ?>
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学