Controllers in Laravel- Sovelluslogiikan ja tietovuorovaikutusten käsittely

Controllers luokat Laravel vastaavat sovelluslogiikan käsittelystä ja mallien ja näkymien välisen vuorovaikutuksen helpottamisesta. Controllers auttaa erottamaan sovelluslogiikan käyttöliittymästä luoden selkeän ja ylläpidettävän projektirakenteen.

 

Luo ohjain

Laravel Voit luoda ohjaimen sovellukseen käyttämällä Laravel Artisan-komentoa. Jos haluat esimerkiksi luoda ohjaimen nimeltä UserController, voit suorittaa seuraavan komennon päätteessä:

php artisan make:controller UserController

Kun ohjain on luotu, voit määrittää ohjaimessa käsittelytapoja. Menetelmässä voit esimerkiksi index() hakea tietoja mallista ja välittää ne näkymään näyttöä varten:

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  
}  

Yllä olevassa esimerkissä käytämme mallia User käyttäjätietojen hakemiseen tietokannasta. Välitämme sitten nämä tiedot näkymään, users.index jotta voimme näyttää käyttäjäluettelon.

Controllers tukee myös menetelmiä, kuten store(), update() ja delete() tietojen luomisen, päivityksen ja poistamisen käsittelemiseen. Voit olla vuorovaikutuksessa tietokannan kanssa näillä tavoilla.

 

HU controller sisään route

Jos haluat käyttää controller in -tunnusta route, voit määrittää controller tiedostossa nimen ja vastaavan menetelmän routes/web.php.

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

Tässä esimerkissä, kun käyttäjä käyttää /users URL-osoitetta, Laravel hän kutsuu menetelmän pyynnön käsittelemiseksi index(). UserController

 

Luo näkymä käyttäjäluettelonäytölle

Voit luoda users.index tiedoston käyttämällä seuraavaa komentoa:

php artisan make:view users.index

Tämä komento luo index.blade.php tiedoston hakemistoon resources/views/users.

Kun tiedosto on luotu, voit avata tiedoston index.blade.php ja suunnitella sivulle käyttöliittymän users.index. Blade-syntaksin avulla voit luoda HTML-rakenteen ja näyttää tiedot ohjaimesta.

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

Yllä olevassa esimerkissä käytämme app.blade.php asettelua @extends('layouts.app'). Sivun sisältö määritellään sisällä ja näyttää luettelon silmukan muuttujan @section('content') käyttäjistä. $users @foreach

Jotta voit käyttää users.index sivua, sinun on määritettävä tiedostoon vastaava reitti, routes/web.php joka osoittaa ohjaimessa olevaan menetelmään ja palauttaa näkymän users.index.

 

Yhteenvetona voidaan todeta, controllers että ohjeessa Laravel erotetaan sovelluslogiikka ja tietojenkäsittely. Käyttämällä controllers, voit rakentaa tehokkaita ja ylläpidettäviä sovelluksia Laravel.