Laravelのルーティングを使ってみる
Route::get() / Route::post()
route.phpで行っているルーティングは、Routeクラスを使って行います。
getメソッドはGETアクセスされた場合、postメソッドはPOSTアクセスされた場合になります。
PHP
1
2
|
Route::get(URL, 処理); Route::post(URL, 処理); |
例えば、/sample/のURLにフォームを設置して、POSTした内容を同じページに表示するようにしてみます。
省略形にルート内容
Laravelのroutingも便利なもので、
Route::resource(‘users’)のようにすると
以下のようなルーティングが自動生成されます。
さらに、そこから余計なものを作らない時には
以下のようにonlyで絞ることが出来ます。
Route::group(['prefix' => 'admin', 'namespace' => 'Admin', 'before' => 'access_admin'], function() { Route::resource('users', 'UsersController', [ 'only' => ['index', 'show'], ]); }
イメージとしては、Admin画面でユーザー一覧(index)と
ユーザーページ(show)だけ存在しているという感じです。
コントローラへのルーティング
// app/Http/routes.php Route::get( 'articles' , 'ArticlesController@index' ); Route::get( 'articles/{id}' , 'ArticlesController@show' ); Route::get( 'articles/create' , 'ArticlesController@create' ); Route::post( 'articles' , 'ArticlesController@store' ); Route::get( 'articles/{id}/edit' , 'ArticlesController@edit' ); Route::put( 'articles/{id}' , 'ArticlesController@update' ); Route:: delete ( 'articles/{id}' , 'ArticlesController@delete' ); |
+--------+----------+--------------------+------+------------------------------------------------+------------+ | Domain | Method | URI | Name | Action | Middleware | +--------+----------+--------------------+------+------------------------------------------------+------------+ | | GET|HEAD | articles | | App\Http\Controllers\ArticlesController@index | | | | GET|HEAD | articles/{id} | | App\Http\Controllers\ArticlesController@show | | | | GET|HEAD | articles/create | | App\Http\Controllers\ArticlesController@create | | | | POST | articles | | App\Http\Controllers\ArticlesController@store | | | | GET|HEAD | articles/{id}/edit | | App\Http\Controllers\ArticlesController@edit | | | | PUT | articles/{id} | | App\Http\Controllers\ArticlesController@update | | | | DELETE | articles/{id} | | App\Http\Controllers\ArticlesController@destroy | | +--------+----------+--------------------+------+------------------------------------------------+------------+ |
参考サイト
Laravel 5.1のルーティング
Laravelで提供されている様々なルーティング方法を紹介します。クロージャを使ったルーティングルートパ…