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

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

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

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

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

1回答

2331閲覧

Auth::routes()はどこで定義されているのか分からない

T.Takeda

総合スコア29

Laravel

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

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2020/07/05 22:07

確認したいこと

Laravel(バージョン 7.18.0)で認証機能を以下の記事の手順で追加しました。

更新! Laravel6/7「make:Auth」が無くなった 〜Laravel6/7でのLogin機能の実装方法〜MyMemo

すると、ルート(web.php)にAuth::routes();が追加されたのですが、vsCode上、Authに波線が表示され、マウスホバーするとUndefined type 'Auth'.という警告が出ています。

イメージ説明

名前空間でAuthを取り込んでもいないように見受けられるのですが、こちらのAuthはどこで定義されているのか教えていただきたいです。
なお、個人的にはnamespace Illuminate\Support\Facades\Auth;を元にしているのかと予想しているのですが、それならなぜuse Illuminate\Support\Facades\Auth;の記載がなくても動くのかわからずにいます。

ちなみに画面上の挙動は期待通り、問題なく動いております。

よろしくお願いします。

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

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

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

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

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

guest

回答1

0

ベストアンサー

config/app.php の、

php

1'aliases' => [ 2 //前略 3 'Auth' => Illuminate\Support\Facades\Auth::class, 4 //後略 5],

です。
これは、laravelプロジェクトを作成した最初の段階から、このようになっています。(認証機能を追加したことによって、使えるようになったものではない、ということです)

config/app.php > aliasesは、よく使うクラスを、システム内のどこからでも「簡易なクラス名」で呼び出し可能にするもの、と思うと理解しやすいかなと思います。
※laravelの内部的な詳しい話は、こちらを参考に。記事自体は古いものですが、仕組み自体は変わってないようなので、内容は間違ってないと思われます。

Authの他にも、全体を通してよく使われるだろうクラスは、初期でほとんど設定されているかと思いますが、例えば自分で定義したオリジナルのクラスなどを、namespase省略の簡単なクラス名で使えるようにしたい場合などに、ここに追記できます。

投稿2020/07/06 03:58

mix-peach

総合スコア1910

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

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

T.Takeda

2020/07/07 02:36

ご回答ありがとうございます。ご紹介いただきました記事を見てみたのですが、なかなか理解が難しい箇所が多々ありますので、引き続き調べてみたいと思います!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問