1 回答

TA貢獻1820條經驗 獲得超9個贊
當鎖定發生時,Laravel 會觸發 Illuminte\Auth\Events\Lockout 事件。眾所周知,我們可以輕松地為此事件設置偵聽器并處理我們想要的任何邏輯。您可以使用php artisan make:listener UserLockedOut命令簡單地創建一個偵聽器。然后將監聽器綁定到事件服務提供者中的事件。
然后在偵聽器的句柄方法中,您可以編寫代碼來通知管理員并更新數據庫表列中用戶的狀態,當然,如果您想跟蹤用戶的狀態,那么只需在數據庫表中創建一列并在偵聽器句柄中調整它方法。
<?php
namespace App\Listeners;
use App\User;
use App\Notifications\LockedOut;
use Illuminate\Auth\Events\Lockout;
class UserLockedOut
{
/**
* Handle the event.
*
* @param \Illuminate\Auth\Events\Lockout $event
* @return void
*/
public function handle(Lockout $event)
{
if ($user = User::where('email', '[email protected]')->first()) {
$user->notify(new LockedOut);
}
// code to update the database table column e.g
}
}
- 1 回答
- 0 關注
- 147 瀏覽
添加回答
舉報