teratail header banner
teratail header banner
質問するログイン新規登録

質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.30%
Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

Q&A

2回答

1482閲覧

laravel 8においてどのようにしてauthとguestを切り替えているかわかりません。

sdfguu6u

総合スコア5

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

0グッド

1クリップ

投稿2023/01/05 13:04

0

1

laravel 8においてどのようにしてauthとguestを切り替えているかわかりません。

https://www.youtube.com/watch?v=cgyMT-67cm4&ab_channel=%E6%B8%8B%E8%B0%B7%E3%81%A7%E5%83%8D%E3%81%8F%E3%82%A8%E3%83%B3%E3%82%B8%E3%83%8B%E3%82%A2%E7%A6%8F%E3%81%AE%E3%80%8C%E5%AE%9F%E8%B7%B5%E3%81%A7%E5%AD%A6%E3%81%B6%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E5%85%A5%E9%96%80%E3%80%8D

こちらの方の動画を参考にbreezeやjetstreamを使わずに一からログイン機能を作成しました。

https://github.com/6110rstmks/laravel_auth_seflmade/blob/feature/login/app/Http/Controllers/Auth/AuthController.php
上記のgithubのコードように、homeページ(認証されたユーザのみが入れるページ)へのアクセスや、ログアウト処理はroutemiddlewareで定義されているauthのみができるのですが
AuthControllerのlogin methodのどこでguestからauthへの切り替えを行う処理をしているのかわかりません。

web.phpの一部抜粋

1Route::group(['middleware' => ['auth']], function() { 2 // User page 3 Route::get('home', function() { 4 return view('home'); 5 6 })->name('home'); 7 8 // log out process 9 10 Route::post('logout', [AuthController::class, 'logout'])->name('logout'); 11 12});

https://reffect.co.jp/laravel/laravel-authentification-by-code-base

こちらなどを認証系のコードを詳しく解説している記事をいくつか読みましたがわかりませんでした。
またグーグルで検索しても求めている情報を見つけることができず、質問させていただきました。

こちらにかんする詳細の記事などを知っておられる方がおられましたら、教えていただけますと嬉しいです。
どうぞよろしくお願いいたします

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

投稿2023/01/05 13:30

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sdfguu6u

2023/01/05 16:34

まだ中を少しか深ぼってないのですが、attemp内の$this->loginの部分でguestからAuthに変更しているという理解でまちがいないでしょうか?
guest

0

Authenticate middleware じゃないですか?
こういうやつ

php

1namespace App\Http\Middleware; 2 3use Illuminate\Auth\Middleware\Authenticate as Middleware; 4 5class Authenticate extends Middleware 6{ 7 /** 8 * Get the path the user should be redirected to when they are not authenticated. 9 * 10 * @param \Illuminate\Http\Request $request 11 * @return string 12 */ 13 protected function redirectTo($request) 14 { 15 16 if (! $request->expectsJson()) { 17 return route('login'); 18 } 19 } 20}

投稿2023/01/05 13:27

編集2023/01/05 13:28
yuma.inaura

総合スコア1453

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sdfguu6u

2023/01/05 16:33

ご回答いただきありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.30%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問