Controllers katika Laravel- Kushughulikia Mantiki ya Maombi na Mwingiliano wa Data

Controllers katika Laravel ni madarasa yenye jukumu la kushughulikia mantiki ya programu na kuwezesha mwingiliano kati ya miundo na maoni. Controllers kusaidia kutenganisha mantiki ya programu kutoka kwa kiolesura cha mtumiaji, na kuunda muundo wa mradi unaoeleweka na unaoweza kudumishwa.

 

Unda kidhibiti

Ili kuunda kidhibiti katika Laravel, unaweza kutumia Laravel amri ya Artisan. Kwa mfano, kuunda kidhibiti kinachoitwa UserController, unaweza kuendesha amri ifuatayo kwenye terminal:

php artisan make:controller UserController

Mara tu kidhibiti kinapoundwa, unaweza kufafanua mbinu za kushughulikia ndani ya mtawala. Kwa mfano, kwa index() njia, unaweza kupata data kutoka kwa mfano na kuipitisha kwa mwonekano wa kuonyesha:

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  
}  

Katika mfano ulio hapo juu, tunatumia User modeli kupata data ya mtumiaji kutoka kwa hifadhidata. Kisha tunapitisha data hii kwa users.index mwonekano ili kuonyesha orodha ya watumiaji.

Controllers pia inasaidia mbinu kama vile store(), update(), na delete() kushughulikia uundaji wa data, kusasisha na kufuta. Unaweza kuingiliana na hifadhidata kupitia njia hizi.

 

Kuingia controller ndani route

Ili kutumia controller in route, unaweza kutaja controller jina na njia inayolingana katika routes/web.php faili.

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

Katika mfano huu, mtumiaji anapofikia /users URL, Laravel ataita index() njia katika UserController kushughulikia ombi.

 

Unda mwonekano wa skrini ya orodha ya watumiaji

Ili kuunda users.index faili, unaweza kutumia amri ifuatayo:

php artisan make:view users.index

Amri hii itaunda index.blade.php faili kwenye resources/views/users saraka.

Mara faili imeundwa, unaweza kufungua index.blade.php faili na kuunda kiolesura cha users.index ukurasa. Unaweza kutumia sintaksia ya Blade kuunda muundo wa HTML na kuonyesha data kutoka kwa kidhibiti.

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

Katika mfano hapo juu, tunatumia app.blade.php mpangilio kupitia @extends('layouts.app'). Yaliyomo kwenye ukurasa yamefafanuliwa ndani @section('content') na huonyesha orodha ya watumiaji kutoka kwa $users kibadilishaji ndani ya @foreach kitanzi.

Ili kutumia users.index ukurasa, unahitaji kufafanua njia inayofanana katika routes/web.php faili ili uelekeze njia katika mtawala na urejeshe users.index mtazamo.

 

Kwa muhtasari, controllers katika Laravel kusaidia kutenganisha mantiki ya programu na kushughulikia usindikaji wa data. Kwa kutumia controllers, unaweza kuunda programu zenye nguvu na zinazoweza kudumishwa katika Laravel.