2 回答

TA貢獻1788條經(jīng)驗 獲得超4個贊
您可以創(chuàng)建一個全局中間件來檢查用戶是否被接受:
namespace App\Http\Middleware;
use Closure;
class CheckIfAccepted
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
if (auth()->check() && !auth()->user()->isAccepted) {
auth()->logout();
return redirect('not-accepted');
}
return $next($request);
}
}
此中間件將注銷任何未被接受的經(jīng)過身份驗證的用戶,并將他們重定向到您選擇的路線。
更改auth()->user()->isAccepted為包含有關(guān)已接受狀態(tài)信息的屬性或方法。
如果您希望中間件在每個請求時運行,您可以通過將其添加到$middleware-array in 中,將其添加為全局中間件app/Http/Kernel.php。
您可以在文檔中閱讀有關(guān)中間件以及如何創(chuàng)建它們的更多信息: https ://laravel.com/docs/master/middleware

TA貢獻1846條經(jīng)驗 獲得超7個贊
首先,您必須讓管理員在收到通知時更新用戶的屬性
User::where('id' , $user_id)->update(['is_request' => 0]);
然后將其添加到您的登錄控制器中
public function credentials(Request $request)
{
$credentials = $request->only($this->username(), 'password');
$credentials = array_add($credentials, 'is_request', 0);
return $credentials;
}
- 2 回答
- 0 關(guān)注
- 100 瀏覽
添加回答
舉報