今回はLaravelのルーティングのカスタマイズについてです。
ルーティングに名前を付けたり、Route::resource()で生成されるルーティングの一部を除外したりする方法を記載します。
Contents
web.phpの編集
Laravelでのルーティングは routes/web.php に記載します。
今回は ArticleControllerのindexアクションをルートに設定し、さらに、CURDをRoute::resource()で追加します。
0 1 2 3 |
Route::get('/', 'ArticleController@index'); Route::resource('/articles', 'ArticleController'); |
ルーティングの確認
URIが/のものと、articles.indexの2つが生成されています。
/もarticles.indexもArticleControllerのindexアクションに飛びます。
名前設定と除外
routes/web.phpを以下のように編集します。
0 1 2 3 |
Route::get('/', 'ArticleController@index')->name('articles.index');; Route::resource('/articles', 'ArticleController')->except(['index']); |
1行目は/にarticles.indexという名前を付けています。
2行目は自動的に生成されるCURDのアクションからindexを除外しています。
ルーティングリストを表示してみます。
0 1 2 |
# php artisan route:list |
/の名前にarticles.indexが設定されました。
ArticleのIndexアクションへのルーティングが一つになりました。
これですっきりとしたルーティングにすることができました。