LoginSignup
13
10

More than 5 years have passed since last update.

【Laravel5.4】routeの設定(web.php)

Last updated at Posted at 2017-10-25

web.phpの場所

  • \app\routes\web.php

現状のroute設定を見る

vagrant@*****:~/app$ php artisan route:list

以下のような感じで見ることができます。

+--------+----------+--------------------------------------------+----------------+-------------------------------------------------------------------------+-----------------+
| Domain | Method   | URI                                        | Name           | Action                                                                  | Middleware      |
+--------+----------+--------------------------------------------+----------------+-------------------------------------------------------------------------+-----------------+
|        | GET|HEAD | /                                          |                | Closure                                                                 | web             |
|        | GET|HEAD | admin/home                                 | home           | App\Http\Controllers\Admin\HomeController@index                         | web,auth:admin  |
|        | POST     | admin/login                                |                | App\Http\Controllers\Admin\Auth\LoginController@login                   | web,guest:admin |
|        | GET|HEAD | admin/login                                | admin.login    | App\Http\Controllers\Admin\Auth\LoginController@showLoginForm           | web,guest:admin |
|        | GET|HEAD | admin/logout                               | admin.logout   | App\Http\Controllers\Auth\LoginController@logout                        | web             |
|        | POST     | admin/logout                               | admin.logout   | App\Http\Controllers\Admin\Auth\LoginController@logout                  | web             |
|        | GET|HEAD | admin/register                             | admin.register | App\Http\Controllers\Admin\Auth\RegisterController@showRegistrationForm | web,guest       |
|        | POST     | admin/register                             |                | App\Http\Controllers\Admin\Auth\RegisterController@register             | web,guest       |
|        | GET|HEAD | api/user                                   |                | Closure                                                                 | api,auth:api    |
+--------+----------+--------------------------------------------+----------------+-------------------------------------------------------------------------+-----------------+

静的なページを表示

web.php
Route::get('/', function () {
    return view('welcome');
});

動き)
rootにアクセスした際に、\app\resources\views 以下の welcome.blade.php
Controllerを介さずに表示させています

ディレクトリを分ける(例:ttp://root/AAAAA/index みたいにする時)

web.php
Route::group(['prefix' => 'aaaaa'], function () {
    // groupでprefixを設定した場合、以下のように書ける
    Route::get('/index', 'AAAAA\***Controller@index')->name('index');
}

->name('index');を付けておくとview側でアクセス先を{{ route('index') }}と書くんだけで記述できる。
例)

form.html
<form method="POST" action="{{ route('index') }}">

ログイン後(認証)に表示させたいページの設定

web.php
Route::group(['middleware' => 'auth'], function () {
    // 認証処理後に表示させたいページ
}

マルチログイン実装時の設定

web.php
Route::group(['middleware' => 'auth:***'], function () {
    // 権限***を持つ者の認証処理後に表示させたいページ
}

以下は設定の例になります。

web.php
/* マルチログイン実装時例 */
Route::group(['middleware' => 'auth:user'], function () {
    // ユーザー側の認証処理後に表示させたいページ
}

Route::group(['middleware' => 'auth:admin'], function () {
    // 管理者側の認証処理後に表示させたいページ
}

※マルチログイン処理に関してはweb.php以外にも設定が必要ですがここでは割愛します。

13
10
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
10