آکادمی کدنویسان با هدف برگزاری آموزش های آنلاین راه اندازی شد. با ثبت نام در دوره های پیش رو، تابستان پرباری داشته باشید

جلسه پنجم – مسیریابی و روش اجرای درخواست ها

چارچوب لاراول ، کدنویسان

در این جلسه مسیریابی برنامه ها را بررسی می کنیم و روش اجرای درخواست های کاربر را توضیح می دهیم.

مسیریابی پایه

مسیریابی پایه در لاراول  مکانیزمی است که درخواست شما را به یک کنترل کننده مناسب هدایت می کند. مسیر برنامه را می توان در فایل routes/web.php تعریف کرد. در اینجا نحو کلی مسیر برای هر یک از درخواست نشان داده شده است.

Route::get('/', function () {
return 'Hello World';
});
Route::post('/foo/bar', function () {
return 'Hello World';
});
Route::put('/foo/bar', function () {
//
});
Route::delete('/foo/bar', function () {
//
});

برای درک چگونگی پردازش درخواست ها و پاسخگویی می توانیم از مثال زیر استفاده می کنیم که به طور پیش فرض هنگام نصب لاراول نوشته شده است.
مثال:

routes/web.php


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

resources/view/welcome.blade.php

<!DOCTYPE html>
<!DOCTYPE html>
<html>
<head>
<title>Laravel
</title>
<link href = "https://fonts.googleapis.com/css?family=Lato:100" rel = "stylesheet"          type = "text/css">
<style>
html, body {
height: 100%;
}
body {
margin: 0;
padding: 0;
width: 100%;
display: table;
font-weight: 100;
font-family: 'Lato';
}
.container {
text-align: center;
display: table-cell;
vertical-align: middle;
}
.content {
text-align: center;
display: inline-block;
}
.title {
font-size: 96px;
}
</style>
</head>
<body>
<div class = "container">
<div class = "content">
<div class = "title">Laravel 5</div>
</div>
</div>

مکانیزم مسیریابی لاراول در تصویر زیر نشان داده شده است:

حالا جزئیات مراحل را توضیح می دهیم :
مرحله اول- ابتدا نیاز است تا URL ریشه برنامه را در نوار آدرس مرورگر قرار داده و اجرا کنیم.
مرحله دوم – URL درخواستی با توجه به پارامترهای تعیین شده، به متد مناسبی از کلاس Route، در فایل web.php تطبیق داده می شود. و در داخل این تابع پاسخی برای درخواست برگردانده می شود.

مرحله سوم – در مثال فوق، اگر درخواست بدون هیچگونه پارامتری (http://localhost:8000) فرستاده شود تابع فایل الگوی resources/views/welcome.blade.php را فراخوانی می کند. توجه کنید که تابع کمکی view فایل الگوی تعیین شده با پسوند blade.php  را فراخوانی می کند. این فایل الگو شامل طراحی HTMLاست که در پاسخ به درخواست نمایش داده خواهد شد.

پارامترهای مسیریابی

اغلب در برنامه، ما قصد داریم پارامترهایی به همراه URL به برنامه بفرستیم . برای انجام این کار، باید کد را در فایل web.php  را تغییر دهیم. دو راه وجود دارد که ما می توانیم پارامترهای منتقل شده با URL را مرود استفاده قرار دهیم.

  • پارامترهای مورد نیاز
  • پارامترهای اختیاری

پارامترهای مورد نیاز

این پارامترها باید در URL باشد. به عنوان مثال، ممکن است قصد داشته باشید ID را از URL وارد کنید تا کاری با آن شناسه انجام دهید. در اینجا کدگذاری نمونه برای فایل routes.php برای این منظور است.

Route::get('ID/{id}',function($id){
echo 'ID: '.$id;
});

هر پارامتری که بعد از ریشه آدرس (http://localhost:8000/ID/5) منتقل می کنیم، آن را در $id ذخیره می کنیم و می توانیم از آن پارامتر برای پردازش بیشتر استفاده کنیم، اما در اینجا آنرا نمایش می دهیم. ما می توانیم آن را به نمایش یا کنترل برای انتقال بیشتر منتقل کنیم.

پارامترهای اختیاری

برخی از پارامترهایی که ممکن است در نشانی اینترنتی وجود داشته باشند و یا ممکن است وجود نداشته باشند و در چنین مواردی ما می توانیم از پارامترهای اختیاری استفاده کنیم. حضور این پارامترها در URL ضروری نیست. این پارامترها با نام «?» بعد از نام پارامترها نشان داده می شوند. در اینجا کدگذاری نمونه برای فایل routes.php برای این منظور است.

Route::get('/user/{name?}',function($name = 'Virat'){
echo "Name: ".$name;
});

مثال :

web.php

<?php
// First Route method – Root URL will match this method
Route::get('/', function () {
return view('welcome');
});
// Second Route method – Root URL with ID will match this method
Route::get('ID/{id}',function($id){
echo 'ID: '.$id;
});
// Third Route method – Root URL with or without name will match this method
Route::get('/user/{name?}',function($name = 'Virat Gandhi'){
echo "Name: ".$name;
});
?>

مرحله ۱ – در اینجا، ما ۳ مسیر را با روش های مختلف برای اهداف مختلف تعریف کردیم. اگر ما URL زیر را اجرا کنیم، اولین روش را اجرا خواهیم کرد.

http://localhost:8000

مرحله ۲ – پس از اجرای موفق URL، خروجی زیر را دریافت خواهید کرد.

مرحله ۳ – اگر ما URL زیر را اجرا کنیم، روش دوم را اجرا خواهد کرد و شناسه argument/parameter به متغیر $id منتقل می شود.

http://localhost:8000/ID/5

مرحله ۴ – پس از اجرای موفق URL، خروجی زیر را دریافت خواهید کرد

مرحله ۵ – اگر URL زیر را اجرا کنیم، روش ۳ را اجرا می کنیم و نام آرگومان/پارامتر اختیاری به متغیر $name منتقل می شود. آخرین بحث “Virat” اختیاری است. اگر آن را حذف کنید، از نام پیش فرض استفاده می شود که ما در عملکرد به عنوان “Virat Gandhi” منتقل شده ایم.

http://localhost:8000/user/Virat

مرحله ۶ – پس از اجرای موفق URL، خروجی زیر را دریافت خواهید کرد

توجه – عبارات منظم نیز می تواند برای مطابقت با پارامترها استفاده شود.

برچسب ها

, , , , ,

محصولات پیشنهادی


نظرات کاربران


نظرات برای آموزش چارچوب لاراول | بدون نظر »

کاربر عزیز، لطفاً دیدگاه ارزشمند خود را از طریق فرم زیر برای ما ارسال کنید:

درباره کدنویسان
آکادمی کدنویسان جهت کمک به دانشجویان رشته های کامپیوتر و فناوری اطلاعات و همه علاقمندان به طراحی و برنامه نویسی برای ویندوز، وب و موبایل ایجاد شده است.
بیشتر آموزش های سایت کدنویسان، بصورت رایگان ارائه شده است و بعضی بسته های آموزشی تصویری و نیز نرم افزارهای پیاده سازی شده در ازای پرداخت، قابل دانلود هستند.
هر گونه نظر، انتقاد یا پیشنهادی در مورد مطالب یا عملکرد کدنویسان دارید، حتما با ما در میان بگذارید.
نمادهای اعتماد ما


تماس با ما
  • شماره همراه : ۰۹۱۵۱۶۰۴۰۶۸
  • آی دی تلگرام : @mmoha94
  • پست الکترونیکی : mohammadi.sm@gmail.com
  • آدرس پستی : بیرجند، خیابان پیروزی، پیروزی ۹، پلاک ۲۸
کلیه حقوق متعلق به سایت کدنویسان است، انتشار و کپی برداری از مطالب این سایت غیرمجاز بوده و پیگرد قانونی دارد.