LaravelのControllerとは?

LaravelのControllerは、Routeから受け取ったリクエストを処理する部分です。

例えば、ユーザーがブログ一覧ページにアクセスすると、RouteからControllerが実行され、必要な処理を行ったあとにViewを画面に表示します。

簡単な流れは以下のようになります。

ユーザー → Route → Controller → View

必要な場合は、ControllerからModelを使ってデータベースのデータを取得することもできます。

Controllerを作る

Laravelでは、Artisanコマンドを使ってControllerを作ることができます。

php artisan make:controller BlogController

コマンドを実行すると、以下の場所にファイルが作成されます。

app/Http/Controllers/BlogController.php

サンプルコード

<?php

namespace App\Http\Controllers;

class BlogController extends Controller
{
public function showList()
{
return view('blog.list');
}
}

コード説明

BlogControllerは、Laravelの基本となるControllerを継承して作ります。

class BlogController extends Controller

showList()は、ブログ一覧画面を表示するためのメソッドです。

public function showList()
{
return view('blog.list');
}

return view()を使うと、Viewファイルを画面に表示できます。

return view('blog.list');

上記のコードでは、以下のBladeファイルを表示します。

resources/views/blog/list.blade.php

Routeでは、以下のようにControllerとつなぐことができます。

Route::get('/blogs', [BlogController::class, 'showList']);

そのため、全体の流れは以下のようになります。

/blogsにアクセス → Route → BlogController → showList() → blog.listを表示

まとめ

LaravelのControllerは、Routeから受け取ったリクエストを処理し、必要な結果をViewに渡す役割があります。

また、必要な場合はModelを使ってデータベースからデータを取得し、Viewに渡すこともできます。

簡単にすると、

Route → Controller → Model / View

という流れで使います。

コメントを残す

メールアドレスが公開されることはありません。 ※ が付いている欄は必須項目です

技術情報

次の記事

LaravelのModelとは?