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

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

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

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

Blade

Bladeとは、 PHPフレームワークのLaravelで使用することができるテンプレートエンジンです。テンプレートの継承とエスケープ機能を提供します。

Q&A

0回答

1331閲覧

LaravelのBladeのif Route::hasの意味がわかりません

kansuukowai

総合スコア0

Laravel

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

Blade

Bladeとは、 PHPフレームワークのLaravelで使用することができるテンプレートエンジンです。テンプレートの継承とエスケープ機能を提供します。

0グッド

0クリップ

投稿2021/09/10 20:58

前提・実現したいこと

LaravelのBladeの@if (Route::has('~~~'))の意味が分かりません。

発生している問題・エラーメッセージ

該当のソースコード

blade

1 @if (Route::has('login')) 2 <div class="top-right links"> 3 @auth 4 <a href="{{ url('/home') }}">トップページ</a> 5 @else 6 <a href="{{ route('login') }}">ログイン</a> 7 8 @if (Route::has('register')) 9 <a href="{{ route('register') }}">新規登録</a> 10 @endif 11 @endauth 12 </div> 13 @endif

疑問・前提

Laravel、MEBアプリ作成の初心者です。
Laravel uiでデフォルトで実装されているbladeの構文の意味がわかりません。
具体的には、上記の

@if (Route::has('login'))

@if (Route::has('register'))

の部分と、

@auth

の部分です。

実際に動かした時のページの挙動から、
・ログイン状態であれば、トップページへのリンクを表示
・ログイン状態でなければ、ログインへのリンクを表示
まではなんとなくわかるのですが、

@if (Route::has('register'))

の部分が、一体何を表しているのか、よくわかっていません。
わかっていないのは、Route::hasの意味がわかっていないからだと思っています。
検索してもしっくりとしたものがなかったので、質問させていただきました。

教えていただけると嬉しいです。

以上です。

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

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

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

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

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

m.ts10806

2021/09/10 22:02

has という英単語でも想像できませんか? ※それとドキュメントは確認されたのでしょうか?
kansuukowai

2021/09/10 23:51

ドキュメントでは、例えばセクションがコンテンツを持っているかを判定したい場合は、@hasSectionを使うという文言は確認できましたが、ルートがloginを持っている場合、について理解ができていません。 hasという単語でも想像できませんでした。 ご回答、ありがとうございました。
m.ts10806

2021/09/11 00:14

回答ではなく質問への追記修正依頼のコメントの一環です。 質問内容からは何をどう調べて「分からない」と言っているのか分からなかったため確認しています。 具体的に記載してください。 >hasという単語でも想像できませんでした。 それは単語の意味がわからないのか、わかってても想像できないのかどちらでしょうか。 hasSectionを説明されるところから、わかってないようには思えないのですが
kansuukowai

2021/09/11 00:35

お返事ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

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

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

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問