Laravel中Eloquent event事件的使用

該文章實戰刪除用戶事件監聽

在模型的生命週期:retrievedcreatingcreatedupdatingupdatedsavingsaveddeletingdeletedrestoringrestored。事件容許您在每次在數據庫中保存或更新特定模型類時輕鬆執行代碼。每一個事件都經過其構造函數接收模型的實例。php

retrieved從數據庫中檢索現有模型時將觸發該事件。當第一次保存新模型時,將觸發creatingcreated事件。若是數據庫中已存在模型而且save調用該方法,則會觸發updating/ updatedevents。可是,在這兩種狀況下,saving/ savedevents都會觸發。數據庫

執行如下命令

php artisan make:event DeleteUserEvent複製代碼
php artisan make:listener DeleteUserListener複製代碼

在providers下/EventServiceProvider文件下添加以下信息

protected $listen = [
    'App\Events\DeleteUserEvent' => [
        'App\Listeners\DeleteUserListener',
     ],
];複製代碼

在model中添加監聽事件

protected $dispatchesEvents = [
   'deleted' => DeleteUserEvent::class,
];複製代碼

Event文件添加user模型

Listener文件添加user模型,並在handle中編寫邏輯,最終實現功能

純原創,全部做品都是實戰經驗,但願能夠得到你們的支持。

相關文章
相關標籤/搜索