Controllers in Laravel- აპლიკაციის ლოგიკისა და მონაცემთა ურთიერთქმედების მართვა

Controllers in Laravel არის კლასები, რომლებიც პასუხისმგებელნი არიან აპლიკაციის ლოგიკის მართვაზე და მოდელებსა და ხედებს შორის ურთიერთქმედების ხელშეწყობაზე. Controllers დაეხმარეთ აპლიკაციის ლოგიკის განცალკევებას მომხმარებლის ინტერფეისიდან, შექმნათ მკაფიო და შენარჩუნებული პროექტის სტრუქტურა.

 

შექმენით კონტროლერი

კონტროლერის შესაქმნელად Laravel შეგიძლიათ გამოიყენოთ Laravel Artisan ბრძანება. მაგალითად, სახელწოდებით კონტროლერის შესაქმნელად 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.