Laravel9でweb.phpでのルートにつけるnameメソッドの正体がようやくわかった件
お恥ずかしながら、あまり考えることなく、
そういうものなんだ程度に理解していたnameメソッド
の正体がようやくわかったので備忘録として残します。
Laravelでのroute/web.php
を書く際一般的には以下のように書ける。
Route::get('/pubmed-scraping/scrape', [PubmedScrapingController::class, 'scrape']);
呼び出すときも普通にリンクを指定してあげれば良くて、
<a href="/pubmed-scraping/scrape" class="btn btn-outline-secondary">要約ページへ行く!!</a>
こんな感じになると思う。
だけど、公式などを見てみると、ルートの書き方で末尾に->name('hoge')
と書いていることが多い。
よくわからんけど、そう書くのね。
位の認識だったのだが、ようやくわかりました。
ここでnameメソッドで指定してあげることで、
aタグなどを使う際にわざわざリンクを指定する必要なく、nameメソッドに書いたものを書けばよくなるみたいです。
こんな感じ。
Route::get('/pubmed-scraping/scrape', [PubmedScrapingController::class, 'scrape'])->name('scrape');
<a href="{{ route('scrape') }}" class="btn btn-outline-secondary">要約ページへ行く!!</a>
可読性もあがるし、URLが変わってもRouteだけ直せばよいので
運用も楽になりますね。
勉強になりました。。!!