Laravel 5.3)のログイン画面にホームページ(/
)を設定するにはどうすればよいですか?
ルートファイルがあります。
Route::get('/', function () {
return view('welcome');
});
コマンドphp artisan make:auth
を使用して基本的な認証スキャフォールディングをセットアップし、dbテーブルもセットアップしました。
しかし、ユーザーが認証されない場合に常にログイン画面に移動するようにホームページを設定する方法を理解するのに苦労していますか?きっとこれは私が愚かだということだけですか?
ルートにmiddleware('auth')
を指定する必要がありました:
Route::get('/', function () {
return view('home');
})->middleware('auth');
Route::get('/home', 'HomeController@index');
これにより、ログインしていない場合は自動的にログインにリダイレクトされます。
あなたはこのようにそれを行うことができます:
Route::group(['middleware' => 'auth'], function () {
Route::get('/', function () {
return view('welcome');
});
});
認証を必要とするすべてのルートをそのミドルウェアグループ内に置くだけです。
laravel 5.4では、ルートをRoute :: get( '/'、 'Auth\LoginController @ showLoginForm');として変更できます。
laravel一般に、URLビューのパスを例として希望するものに変更できます
Route::get('/', function () {
return view('auth.login');
});