Controllers in Laravel- Menangani Logika Aplikasi dan Interaksi Data

Controllers in Laravel adalah kelas yang bertanggung jawab untuk menangani logika aplikasi dan memfasilitasi interaksi antara model dan tampilan. Controllers membantu memisahkan logika aplikasi dari antarmuka pengguna, menciptakan struktur proyek yang jelas dan dapat dipelihara.

 

Buat pengontrol

Untuk membuat pengontrol di Laravel, Anda dapat menggunakan Laravel perintah Artisan. Misalnya, untuk membuat pengontrol bernama UserController, Anda dapat menjalankan perintah berikut di terminal:

php artisan make:controller UserController

Setelah pengontrol dibuat, Anda dapat menentukan metode penanganan di dalam pengontrol. Misalnya, dalam index() metode ini, Anda dapat mengambil data dari model dan meneruskannya ke tampilan untuk ditampilkan:

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  
}  

Dalam contoh di atas, kami menggunakan User model untuk mengambil data pengguna dari database. Kami kemudian meneruskan data ini ke tampilan users.index untuk menampilkan daftar pengguna.

Controllers juga mendukung metode seperti store(), update(), dan delete() untuk menangani pembuatan, pembaruan, dan penghapusan data. Anda dapat berinteraksi dengan database melalui metode ini.

 

Masuk controller _ route

Untuk menggunakan controller in route, Anda dapat menentukan controller nama dan metode yang sesuai dalam routes/web.php file.

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

Dalam contoh ini, ketika pengguna mengakses /users URL, Laravel akan memanggil index() metode untuk UserController menangani permintaan tersebut.

 

Buat tampilan untuk layar daftar pengguna

Untuk membuat users.index file, Anda dapat menggunakan perintah berikut:

php artisan make:view users.index

Perintah ini akan membuat index.blade.php file di resources/views/users direktori.

Setelah file dibuat, Anda dapat membuka index.blade.php file dan mendesain antarmuka untuk users.index halaman tersebut. Anda dapat menggunakan sintaks Blade untuk membuat struktur HTML dan menampilkan data dari pengontrol.

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

Pada contoh di atas, kita menggunakan app.blade.php layout through @extends('layouts.app'). Konten halaman ditentukan di dalam @section('content') dan menampilkan daftar pengguna dari $users variabel dalam satu @foreach lingkaran.

Untuk menggunakan users.index halaman, Anda perlu menentukan rute yang sesuai di file routes/web.php untuk menunjuk ke metode di pengontrol dan mengembalikan users.index tampilan.

 

Singkatnya, controllers dalam Laravel membantu memisahkan logika aplikasi dan menangani pemrosesan data. Dengan menggunakan controllers, Anda dapat membangun aplikasi yang kuat dan dapat dipelihara dalam Laravel.