当您是管理员并想要阻止某些用户时会出现此问题。然后,当您阻止用户时,您想 imidietly 注销他。对于 laravel 5.2(也可以用于较低版本),您可以创建中间件:
创建中间件
namespace App\Http\Middleware;
use Closure;
use Illuminate\Support\Facades\Auth;
class BockedUser
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @param string|null $guard
* @return mixed
*/
public function handle($request, Closure $next, $guard = null)
{
$user = Auth::user();
if ($user and $user->is_bocked) {
Auth::logout();
return redirect('/login');
}
return $next($request);
}
}
Run Code Online (Sandbox Code Playgroud)
并在 app/Http/Kernel.php 部分 $middlewareGroups > 'web' 添加 \App\Http\Middleware\BockedUser::class。我假设你所有的路线都在Route::group(['middleware' => 'web'], function () { .. all your routes ..}