Controllers で Laravel- アプリケーション ロジックとデータ インタラクションの処理

Controllers は Laravel 、アプリケーション ロジックを処理し、モデルとビュー間の対話を容易にするクラスです。 Controllers アプリケーション ロジックをユーザー インターフェイスから分離し、明確で保守可能なプロジェクト構造を作成します。

 

コントローラーの作成

でコントローラを作成するには、 の Artisan コマンドを Laravel 使用できます。 Laravel たとえば、 という名前のコントローラを作成するには UserController 、ターミナルで次のコマンドを実行します。

php artisan make:controller UserController

コントローラーを作成したら、コントローラー内で処理メソッドを定義できます。 たとえば、この index() メソッドでは、モデルからデータを取得し、それを表示のためにビューに渡すことができます。

namespace App\Http\Controllers;  
  
use App\Models\User;  
use Illuminate\Http\Request;  
  
class UserController extends Controller  
{  
    public function index()  
    {  
        $users = User::all();  
  
        return view('users.index', ['users' => $users]);  
    }  
  
    // Other handling methods  
}  

上の例では、 User モデルを使用してデータベースからユーザー データを取得します。 次に、このデータをビューに渡して、 users.index ユーザーのリストを表示します。

Controllers データの作成、更新、削除を処理するための store()update()、 、 などのメソッドもサポートしています。 delete() これらのメソッドを通じてデータベースと対話できます。

 

ヒューズ controller イン route

controller in を 使用するには、ファイル 内で名前と対応するメソッド route を指定します 。 controller routes/web.php

use App\Http\Controllers\UserController;  
  
Route::get('/users', [UserController::class, 'index']);  

この例では、ユーザーが /users URL にアクセスすると、の メソッドを Laravel 呼び出して リクエストを処理します。 index() UserController

 

ユーザー一覧画面のビューを作成する

ファイルを作成するには users.index 、次のコマンドを使用できます。

php artisan make:view users.index

index.blade.php このコマンドはディレクトリにファイル を作成します resources/views/users

ファイルが作成されたら、 index.blade.php ファイルを開いてページのインターフェイスをデザインできます users.index。 Blade 構文を使用して HTML 構造を作成し、コントローラーからのデータを表示できます。

<!-- resources/views/users/index.blade.php -->  
@extends('layouts.app')  
  
@section('content')  
    <h1>Users</h1>  
    <ul>  
        @foreach($users as $user)  
            <li>{{ $user->name }}</li>  
        @endforeach  
    </ul>  
@endsection  

上の例では、 app.blade.php からレイアウトを使用します @extends('layouts.app')。 ページのコンテンツは内で定義され、ループ 内の変数 @section('content') からのユーザーのリストを表示します 。 $users @foreach

このページを使用するには users.index 、ファイル内で対応するルートを定義し routes/web.php 、コントローラー内のメソッドを指し、 users.index ビューを返す必要があります。

 

要約すると、ヘルプ controllers では Laravel アプリケーション ロジックを分離し、データ処理を処理します。 を使用すると controllers 、強力で保守しやすいアプリケーションを で構築できます Laravel。