Routing در لاراول

Route در لاراول هر درخواستی را به یک controller هدایت می کند. تمامی route ها در مسیر routes/web.php ذخیره و مشخص می شوند. به عنوان نمونه route پیشفرضی که بعد از نصب لاراول مشاهده می کنید به ریشه دامنه که همان / است اشاره می کند و این route در جواب درخواست کاربر صفحه welcome را که همان فایل welcome.blade.php است را باز می کند. که این صفحه هم در مسیر view قرار دارد.

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

ارسال و دریافت متغیرها در Routing

خوب این از بدیهیات است که بخواهید با استفاده از routing یا به عبارتی با استفاده از URL اقدام به ارسال متغیرها کنید. این کار در لاراول بسیار ساده است. اجازه دهید با استفاده از یک مثال ساده موضوع را توضیح دهیم. در مثال زیر ما مقدار id را به یک url ارسال کرده و اقدام به چاپ آن در صفحه می کنیم.

Route::get('user/{id}',function($id){
    echo"user ID: ".$id;
});
Routing در لاراول

همانطور که در تصویر بالا مشاهده می کنید ما مقدار 12 را از طریق آدرس ارسال کرده ایم و همان مقدار را در صفحه نمایش می دهیم. حال سوال اینجاست که اگر مقدار 12 را ارسال نمی کردیم چه اتفاقی می افتاد؟ در این صورت با ارور not found مواجه می شدید. برای این که با این ارور مواجه نشوید کد را به این شکل اصلاح می کنیم.

Route::get('user/{id?}',function($id='20'){
    echo"user ID: ".$id;
});

در صورتی که مقدار id تعریف نشده باشد مقدار پیش فرض 20 را چاپ خواهد کرد.

نامگذاری route ها در لاراول

خوب برای سهولت کار می توانید برای route مورد نظر اسم بگذارید. به این شکل که در مواقع نیاز مثلا وقتی در action یک فرم می خواهید route مورد نظر را فراخوانی کنید کافی است فقط به اسم تعریف شده route اشاره کنید.

Route::get('user/profile', 'UserController@showProfile')->name('profile');

دیدگاهتان را بنویسید