我找到了添加管理員守衛的方法。
但是沒有檔案可以自定義以下功能:
Auth::guard('admin')->attempt()
Auth::guard('admin')->user()
Auth::guard('admin')->check()
middleware('auth:admin')
我需要檢查 admin 表的附加欄位以檢查管理員是否可以登錄。
在 中Auth::guard('admin')->attempt(),我想像這樣使用 SQL:
Admin::where('login_id', $request->input('login_id'))
->where('password', md5($request->input('password')))
->where('additional_field', [additional condition]);
通過Auth::guard('admin')->user(),我想得到這樣的 SQL 結果:
Admin::where('id', Auth::guard('admin')->id())
->where('additional_field', [additional condition]);
而且兩者Auth::guard('admin')->check()并middleware('auth:admin')也應考慮在上面的代碼中的附加條件。
有沒有辦法自定義它們?
而且,我必須自定義 Laravel 身份驗證的任何其他功能以滿足上述附加條件的要求嗎?
我正在使用 Laravel 8。
uj5u.com熱心網友回復:
如果你additional stuff有一些輸入login_id,password
也許這應該有效。
$cradentials= $request->only('email','password','additional stuff');
if( Auth::guard('admin')->attempt($cradentials) ){
//stuff here
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/391967.html
標籤:拉拉维尔
上一篇:有條件選擇提供者Laravel
