فصل اول: شروع کار با لاراول

Routing و Controller

تعریف مسیرها و کنترلرها

Routing در لاراول مشخص می‌کند که هر آدرس (URL) باید به چه کدی متصل شود. تمام مسیرهای وب در فایل routes/web.php تعریف می‌شوند. ساده‌ترین حالت یک مسیر، اجرای مستقیم یک Closure است:

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

Route::get('/about', function () {
    return 'درباره‌ی ما';
});

برای پروژه‌های واقعی معمولاً منطق را به Controller منتقل می‌کنیم. برای ساخت یک Controller از artisan استفاده می‌کنیم:

php artisan make:controller PostController

سپس متدهای لازم را داخل آن می‌نویسیم:

class PostController extends Controller
{
    public function index()
    {
        $posts = Post::all();
        return view('posts.index', compact('posts'));
    }

    public function show($id)
    {
        $post = Post::findOrFail($id);
        return view('posts.show', compact('post'));
    }
}

و در فایل مسیرها، این متدها را به آدرس‌های مشخص وصل می‌کنیم:

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

پارامترهای داخل آکولاد در مسیر، مانند id}{، به‌صورت خودکار به آرگومان متد Controller ارسال می‌شوند. برای گروه‌بندی مسیرهای پرتکرار (مثل CRUD کامل) می‌توان از Route::resource استفاده کرد که در درس API با جزئیات بیشتری بررسی خواهد شد.

برای ذخیره‌ی پیشرفت و شرکت در آزمون، وارد شوید — رایگان است.