Laravel: 0 dan Pro gacha – 3-qism: Routing va Controller’lar bilan ishlash

📘 Kirish

Laravel’ning eng muhim konseptlaridan biri bu — Routing va Controller. Ular foydalanuvchi so‘rovlarini boshqarish, ma’lumotlarni olish va sahifalarga yuborish uchun ishlatiladi.

Ushbu maqolada siz quyidagilarni o‘rganasiz:

  • Routing nima va qanday ishlaydi?

  • Web va API route farqlari

  • Route turlari (GET, POST va h.k.)

  • Route dan Controller ga yo‘naltirish

  • Controller yaratish va undan foydalanish


🛣️ Routing nima?

Routing — bu foydalanuvchi brauzerida yozgan URL manzilini Laravel ichida aniqlash va unga qanday javob berish kerakligini belgilovchi qoidalar to‘plami.

Laravel’dagi barcha web yo‘llar routes/web.php faylida joylashadi.


🧪 Oddiy route yozish

// routes/web.php
use Illuminate\Support\Facades\Route;

Route::get('/', function () {
    return view('welcome');
});

Bu yerda / yo‘liga GET so‘rov kelganda welcome nomli view qaytariladi.

📮 GET va POST route

// GET - sahifa ochish
Route::get('/about', function () {
    return 'Bu About sahifasi';
});

// POST - ma’lumot yuborish
Route::post('/submit', function () {
    return 'Ma’lumot yuborildi';
});

📂 Controller yaratish

Controller’lar app/Http/Controllers/ papkasida saqlanadi.

php artisan make:controller BlogController

Misol: app/Http/Controllers/BlogController.php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class BlogController extends Controller
{
    public function index()
    {
        return view('blog.index');
    }

    public function show($id)
    {
        return "Maqola raqami: " . $id;
    }
}

📎 Controller bilan route bog‘lash

use App\Http\Controllers\BlogController;

Route::get('/blog', [BlogController::class, 'index']);
Route::get('/blog/{id}', [BlogController::class, 'show']);

🧩 Route nomlash va route() helper

Route::get('/contact', function () {
    return view('contact');
})->name('contact');

<a href="{{ route('contact') }}">Biz bilan bog‘laning</a>

🧠 Route guruhlari

Route::prefix('admin')->group(function () {
    Route::get('/dashboard', function () {
        return 'Admin Dashboard';
    });
});

📌 Xulosa

  • Routing foydalanuvchi so‘rovini qanday qayta ishlashni belgilaydi.

  • Controller bu so‘rovni qabul qilib, logikani bajaradi va javobni qaytaradi.

  • Laravel routing tizimi juda qulay va kuchli, ayniqsa loyihalar kattalashgan sari Controller’lar bilan ishlash juda muhim bo‘ladi.


🏁 Keyingi qism (4-qism)

4-qismda — Laravel’da ma’lumotlar bazasi bilan ishlash (Eloquent ORM kirish) mavzusini ko‘rib chiqamiz.