Laravel-ルーティング
Laravelでは、すべてのリクエストはルートの助けを借りてマッピングされます。基本ルーティングは、関連するコントローラーに要求をルーティングします。この章では、Laravelでのルーティングについて説明します。
Laravelでのルーティングには次のカテゴリが含まれます-
- 基本的なルーティング
- ルートパラメータ
- 名前付きルート
基本的なルーティング
すべてのアプリケーションルートは、 app/routes.phpファイル。このファイルは、Laravelに応答する必要のあるURIを通知し、関連するコントローラーが特定の呼び出しを行います。ウェルカムページのサンプルルートは、以下のスクリーンショットに示すように表示されます-
Route::get ('/', function () {
return view('welcome');});
例
ルーティングについてさらに理解するには、次の例を参照してください。
app/Http/routes.php
<?php
Route::get('/', function () {
return view('welcome');
});
resources/view/welcome.blade.php
<!DOCTYPE html>
<html>
<head>
<title>Laravel</title>
<link href = "https://fonts.googleapis.com/css?family=Lato:100" rel = "stylesheet"
type = "text/css">
<style>
html, body {
height: 100%;
}
body {
margin: 0;
padding: 0;
width: 100%;
display: table;
font-weight: 100;
font-family: 'Lato';
}
.container {
text-align: center;
display: table-cell;
vertical-align: middle;
}
.content {
text-align: center;
display: inline-block;
}
.title {
font-size: 96px;
}
</style>
</head>
<body>
<div class = "container">
<div class = "content">
<div class = "title">Laravel 5.1</div>
</div>
</div>
</body>
</html>
ルーティングメカニズムは、以下の画像に示されています-
ここで、ルーティングメカニズムに関連する手順を詳細に理解しましょう-
Step 1 −最初に、アプリケーションのルートURLを実行する必要があります。
Step 2 −これで、実行されたURLは、の適切なメソッドと一致するはずです。 route.phpファイル。この場合、メソッドとルート( '/')URLに一致する必要があります。これにより、関連する機能が実行されます。
Step 3 −関数はテンプレートファイルを呼び出します resources/views/welcome.blade.php. 次に、関数はを呼び出します view() 引数付きの関数 ‘welcome’ を使用せずに blade.php。
これにより、下の画像に示すようなHTML出力が生成されます-
ルートパラメータ
Webアプリケーションでは、URLとともに渡されたパラメーターをキャプチャする必要がある場合があります。このためには、コードを変更する必要がありますroutes.php ファイル。
でパラメータをキャプチャできます routes.php ここで説明するように、2つの方法でファイルします-
必要なパラメーター
これらのパラメーターは、Webアプリケーションをルーティングするために強制的にキャプチャする必要があるパラメーターです。たとえば、URLからユーザーの識別番号を取得することが重要です。これは、以下に示すようにルートパラメータを定義することで可能になります。
Route::get('ID/{id}',function($id) {
echo 'ID: '.$id;
});
オプションのパラメータ
開発者がオプションとしてパラメータを作成できる場合がありますが、これを含めることで可能になります。 ?URLのパラメータ名の後。パラメータ名として記載されているデフォルト値を維持することが重要です。オプションのパラメータを定義する方法を示す次の例を見てください-
Route::get('user/{name?}', function ($name = 'TutorialsPoint') { return $name;});
上記の例では、値がに一致するかどうかを確認します TutorialsPoint それに応じて、定義されたURLにルーティングします。
名前付きルート
名前付きルートを使用すると、ルートを簡単に作成できます。ルートのチェーンは、nameメソッドを使用してルート定義に指定できます。次のコードは、コントローラー-を使用して名前付きルートを作成する例を示しています。
Route::get('user/profile', 'UserController@showProfile')->name('profile');
ユーザーコントローラーが関数を呼び出します showProfile パラメータを使用 profile。使用するパラメータname ルート定義へのメソッド。