ルーティングとは
特定のアドレス(URL)にアクセスしたとき、どの処理を呼び出して実行するのか、を管理するもの。
たとえば、 以下のようなURLがあったとき、
https://domain.com/create
https://domain.com/search
ドメイン(domain.com)より後ろ側を見て
/createなら、登録の処理
/searchなら、検索の処理
というように処理します。
このURLを見て、「コントローラーのどのアクションにつなげるか」を指定しています。
つまり、ルーティングを見て、「どのコントローラのどの処理(メソッド)を呼び出すか」を指定しています。
ルーティングの指定は以下のようになります。
Route::get('/create','TestsController@create');
Route::get('/search','TestsController@search');
get送信で、URLが「/create」のときは、 TestsController の create アクションに通してね。
という意味です。searchも一緒。
get送信
Route::get('/hoge', 'HogeController@index');
【意味】
→「/hoge」パスにget送信でリクエストが来たら、HogeControllerのindexアクションへつなぐ(indexアクションの中で処理する)
という意味。
名前つきルーティング
Route::get('/hoge', 'HogeController@index')->name('hoge');
【使い所】
→コントローラやビューの中で URL を指定する時。
素のPHPではソースコードに直にパスを書いていた。
しかし、この方法だと、パスに変更があった時に、多くの箇所を変更する必要がある。
そこで、ルートに名前を付け、ルート名で URL を指定することで、この問題を解決できる。