Controllers in Laravel- Alkalmazáslogikai és adatkölcsönhatások kezelése

Controllers Laravel Az alkalmazási logika kezeléséért és a modellek és nézetek közötti interakció megkönnyítéséért osztályok felelősek. Controllers segít elválasztani az alkalmazás logikáját a felhasználói felülettől, világos és karbantartható projektstruktúrát hozva létre.

 

Vezérlő létrehozása

Vezérlő létrehozásához Laravel használhatja Laravel az Artisan parancsot. Például egy vezérlő létrehozásához UserController futtassa a következő parancsot a terminálban:

php artisan make:controller UserController

A vezérlő létrehozása után kezelési módszereket határozhat meg a vezérlőn belül. Például a módszerben index() lekérhet adatokat egy modellből, és átadhatja azokat egy nézetnek megjelenítésre:

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  
}  

A fenti példában a User modell segítségével lekérjük a felhasználói adatokat az adatbázisból. Ezután átadjuk ezeket az adatokat a users.index nézetnek, hogy megjelenítsük a felhasználók listáját.

Controllers olyan módszereket is támogat, mint például store() a, update() és delete() az adatok létrehozásának, frissítésének és törlésének kezelésére. Ezekkel a módszerekkel kommunikálhat az adatbázissal.

 

HUsing controller be route

controller Az in használatához route megadhatja a controller nevet és a megfelelő metódust a fájlban routes/web.php.

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

Ebben a példában, amikor egy felhasználó hozzáfér az /users URL-hez, Laravel meghívja a index() metódusban UserController a kérés kezelésére.

 

Hozzon létre egy nézetet a felhasználói lista képernyőhöz

A fájl létrehozásához users.index a következő parancsot használhatja:

php artisan make:view users.index

Ez a parancs létrehoz egy index.blade.php fájlt a resources/views/users könyvtárban.

A fájl létrehozása után megnyithatja a index.blade.php fájlt, és megtervezheti az users.index oldal felületét. A Blade szintaxis segítségével létrehozhatja a HTML-struktúrát és megjelenítheti az adatokat a vezérlőből.

<!-- 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  

A fenti példában az app.blade.php elrendezést használjuk @extends('layouts.app'). Az oldal tartalma belül van meghatározva, és egy cikluson belül @section('content') megjeleníti a változóból származó felhasználók listáját. $users @foreach

Az oldal használatához users.index meg kell határoznia a megfelelő útvonalat a fájlban, routes/web.php amely a vezérlőben lévő metódusra mutat, és visszaadja a users.index nézetet.

 

Összefoglalva, a súgóban controllers az Laravel alkalmazáslogika és az adatfeldolgozás kezelésének szétválasztása. A használatával controllers hatékony és karbantartható alkalmazásokat építhet a Laravel.