ルーティングの基本
LaravelはWebアプリケーションを作成するためのフレームワーク(枠組み)です。
Webアプリケーションは、基本的には
「あるurlにリクエストを送る(ブラウザでurlを叩く)と、レスポンス(基本は文字列)が返ってくる」
という仕組みです。
このことがシンプルに現れているのがルーティングのファイルになります。
sample_app/routes/web.php を開いてみましょう。
web.php
<?php
(コメントを省略)
Route::get('/', function () {
return view('welcome');
});
上記のように書かれています。
これは、
- getメソッドで、
- '/'(ドメイン直下、今回はlocalhost)にアクセスしたら
- 指定した無名関数(名前のないfunction)を実行して、
- view関数の実行結果をreturnしてください。
という意味になります。
では、もっとシンプルにしてみましょう。 上記の箇所を以下のように書き換えてみましょう。
web.php
<?php
Route::get('/', function () {
return 'シンプルなルーティング!';
});
書き換えて保存を行なったら、
(Docker Toolboxの場合は http://(dockerのipアドレス) )
にアクセスしてみましょう。
画面上に「シンプルなルーティング!」と表示されていればOKです。
ブラウザでソースの表示をしていただくと、 まさに「シンプルなルーティング!」という文字列だけが送信されていることが確認できます。
複数のルートを定義する
web.php
<?php
Route::get('/', function () {
return 'シンプルなルーティング!';
});
Route::get('/other', function () {
return 'ここは/otherです。';
});
上記のようにして、
(Docker Toolboxの場合は http://(dockerのipアドレス)/other )
にアクセスすると、画面上に「ここは/otherです。」 と表示されます。
このように、ルーティングは 「あるURLに特定のメソッド(get, postなど)でアクセスしたら、どんな文字列をレスポンスとして返すのか?」 を決めるシンプルな仕組みです。
演習・ルーティングの作成
(Docker Toolboxの場合は http://(dockerのipアドレス)/practice )
にアクセスした時に、画面上に「ここは/practiceです」と表示されるようにしてみましょう。