PHPとLaravelの新機能です。私はオンラインで検索しようとしますが、私の問題について正しい答えを得ることはできません。私は自分の特定のページにアクセスできるのは、既に認証されている管理者とユーザーだけです。基本的に、すべてのユーザーが最初にログインする必要があります。私のコードをheres。前もって感謝します。ミドルウェアの複数の認証。 Laravel 5.4
HomeController.php
class HomeController extends Controller
{
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware('auth:web, auth:admin');
}
/**
* Show the application dashboard.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
return view('accounts.user.user_dashboard');
}
}
auth.php
'guards' => [
'web' => [
'driver' => 'session',
'provider' => 'users',
],
'api' => [
'driver' => 'token',
'provider' => 'users',
],
'admin' => [
'driver' => 'session',
'provider' => 'admins',
],
'admin-api' => [
'driver' => 'token',
'provider' => 'admins',
],
],
あなたの要件では、ルートミドルウェアを作成して、ユーザーの役割が通常ユーザーか管理ユーザーかを確認する必要があります。 Webミドルウェアまたは管理ミドルウェアの両方を使用することはできません。管理ロールユーザが通常のウェブに自動的にアクセスすることができます。あなたは複数のミドルウェアを置く必要はありません。最良の方法は、コントローラのコンストラクタにないルートで使用することです。 – webDev
ユーザの役割をユーザテーブルからチェックする経路ミドルウェアを定義して、自分で試してみてください。あなたの道ではない簡単な方法をしてください...私はソリューションを投稿するルートミドルウェアを使用して把握できない場合。 – webDev