Controllers ਵਿੱਚ Laravel ਐਪਲੀਕੇਸ਼ਨ ਤਰਕ ਨੂੰ ਸੰਭਾਲਣ ਅਤੇ ਮਾਡਲਾਂ ਅਤੇ ਦ੍ਰਿਸ਼ਾਂ ਵਿਚਕਾਰ ਆਪਸੀ ਤਾਲਮੇਲ ਦੀ ਸਹੂਲਤ ਲਈ ਜ਼ਿੰਮੇਵਾਰ ਕਲਾਸਾਂ ਹਨ। Controllers ਐਪਲੀਕੇਸ਼ਨ ਤਰਕ ਨੂੰ ਉਪਭੋਗਤਾ ਇੰਟਰਫੇਸ ਤੋਂ ਵੱਖ ਕਰਨ ਵਿੱਚ ਮਦਦ ਕਰੋ, ਇੱਕ ਸਪਸ਼ਟ ਅਤੇ ਰੱਖ-ਰਖਾਅ ਯੋਗ ਪ੍ਰੋਜੈਕਟ ਬਣਤਰ ਬਣਾਉਣਾ।
ਕੰਟਰੋਲਰ ਬਣਾਓ
ਵਿੱਚ ਇੱਕ ਕੰਟਰੋਲਰ ਬਣਾਉਣ ਲਈ Laravel, ਤੁਸੀਂ Laravel ਆਰਟੀਸਨ ਕਮਾਂਡ ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹੋ। ਉਦਾਹਰਨ ਲਈ, ਨਾਂ ਦਾ ਕੰਟਰੋਲਰ ਬਣਾਉਣ ਲਈ 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
ਤੁਸੀਂ 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 ।