ルーティングの基本

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 'シンプルなルーティング!';
});

書き換えて保存を行なったら、

http://localhost

(Docker Toolboxの場合は http://(dockerのipアドレス) )

にアクセスしてみましょう。

画面上に「シンプルなルーティング!」と表示されていればOKです。

ブラウザでソースの表示をしていただくと、 まさに「シンプルなルーティング!」という文字列だけが送信されていることが確認できます。

複数のルートを定義する

web.php

<?php

Route::get('/', function () {
    return 'シンプルなルーティング!';
});

Route::get('/other', function () {
    return 'ここは/otherです。';
});

上記のようにして、

http://localhost/other

(Docker Toolboxの場合は http://(dockerのipアドレス)/other )

にアクセスすると、画面上に「ここは/otherです。」 と表示されます。

このように、ルーティングは 「あるURLに特定のメソッド(get, postなど)でアクセスしたら、どんな文字列をレスポンスとして返すのか?」 を決めるシンプルな仕組みです。

演習・ルーティングの作成

http://localhost/practice

(Docker Toolboxの場合は http://(dockerのipアドレス)/practice )

にアクセスした時に、画面上に「ここは/practiceです」と表示されるようにしてみましょう。

results matching ""

    No results matching ""