نصب و راه اندازی فریم ورک Laravel – مسیریابی یا Route

نصب و راه اندازی فریم ورک Laravel – مسیریابی یا Route

به قسمت سوم از این سری از آموزش فریم ورک Laravel خوش آمدید، امیدوارم که تا اینجا پست قبلی مفید واقع شده باشد. در قسمت پیش دیدیم که چطور لاراول را به سادگی نصب کنیم، حال می خواهیم به بخش های هیجان انگیز این فریم ورک قدرتمند برسیم، اگر مثل من مشتاق ادامه کار هستید، پس بیایید که هــک را شروع کنیم.


 

.توجه: این آموزش تنها با نسخه ۴ لاراول هماهنگی دارد 

 

Routing

 

برای نظارت مستقیم بر روی ترافیک برنامه های خود، Routeها باعث می شوند کنترل کاملی بر روی پاسخ ها یا مقصدهای وب داشته باشید. شما می توانید به راحتی یک درخواست عمومی برای انتقال به یک مکان راه اندازی کنید به عنوان مثال صفحه اصلی (home)، و در خواست های مشخص تر مثل صفحه (درباره ما) برای نمایش محتوای آن.

یک مسیر یا route در واقع، آن چیزی است که برای ما در این صفحه آورده است و ما می توانیم آن را بر روی صفحه نمایش مشاهده کنیم.

laravel-start

در این بخش، به شما اصول اولیه راه اندازی routeها در چارچوب لاراول خود را نشان می دهم، و همچنین چند ویژگی پیشرفته مثل انتقال پارامترها آشنا می شویم، بنابراین شما کاملا می توانید نقشه ای از گوشه و کنار ویژگی های لاراول داشته باشید. بسیاری از مسیرها برای برنامه شما در app/routes.php تعریف و نگهداری می شوند.

 

شروع

 

حال بیایید نگاهی به این فایل بیندازیم. با استفاده از ویرایشگر محبوب خود، پروژه خود را که قبلا با نام firstapp ایجاد کرده اید باز کنید. در داخل ریشه برنامه خود فایلی به نام routes.php وجود دارد، آن را باز کرده و همانطور که مشاهده می کنید، تنها یک مسیر اولیه تعریف شده وجود دارد:

اما این تکه کد از خط ۱۴ تا ۱۷ مسئول نمایش صفحه پیشفرض لاراول همراه با لوگو و پیغام “You have arrived” است. این کد نمایی به صورت HTML بر می گرداند که در قسمت بعدی آن را پوشش می دهیم. ولی برای حالا، در حال حاضر، اجازه دهید با چیزی اساسی تر شروع کنیم، یک متن ساده به یک درخواست صفحه مشخص پاسخ می دهد. بیایید فرض کنیم که می خواهیم محتوایی بر اساس صفحه about ایجاد کنیم، برای این کار کد زیر راه به ادامه فایل routes.php اضافه کنید:

چندین متد متفاوت وجود دارد که می توانستیم از آنها در کد بالا استفاده کنیم، اما در اینجا ما از اساسی ترین آنها یعنی get استفاده کرده ایم، همانطور که مشخص است ما صفجه ای جدید با نام about به وب سایت اضافه کرده ایم، بعد از مشخص کردن نام صفحه جدید، در ادامه آن تابعی را مشاهده می کنید که محلی است برای اجرای کد های مورد نیاز خود. برای حالا، ما تنها می خواهیم قطعه متنی را با استفاده از return به ما برگرداند، جالب است نه!؟ از این ساده تر دیگر نمی شود. خــــوب! حالا فایل خود را ذخیره کنید و سعی کنید آن را در مرورگر خود اجرا کنید. برای اینکه بدانیم قطعه کد ما درست کار می کند یا نه، به آدرس http://localhost:8000/about رفته، اگر همه چیز درست باشد پیام About content goes here را مشاهده خواهید کرد.

خــوبه! حالا، به فایل routes.php خود برگشته و قصد داریم دایرکتوری جدید با نام about که شامل صفحه ای directions است را ایجاد کنیم. برای این کار تکه کد بالا را کپی کرده و در ادامه آن اضافه کنید و آنها را به بصورت زیر ویرایش کنید:

همانطور که معلوم است، برای نمایش خروجی به آدرس http://localhost:8000/about/directions رفته و محتوای جدید را مشاهده کنید. خوب! شما حالا با استفاده از این متد می توانید مسیرهای پیچیده خود را بسته به نیاز خود به سادگی تعریف کنید.

حال اجازه دهید یک قدم به جلو رفته و با پارامترها کار کنیم. به جای مشخص کردن یک صفحه برای تمام محتوای مرتبط با about، می توانیم به یک آرگومان انتقال دهیم و بر این اساس محتوا تغییر خواهد کرد. چندین روش برای انجام این کار وجود دارد. برای نشان دادن این کار، ابتدا در کد بالا، اولین کد سفارشی که برای about را ایجاد کردیم را کپی کرده و به صورت زیر آن را ویرایش کنید:

همانطور که می بینید، بعد از about کاراکتر / آمده است و به دنبال آن متغیری به نام theSubject آمده است، در ادامه، آن را به تابع اضافه می کنم که به درستی منتقل شود. توجه داشته باشید که در تابع کاراکتر $ را به نام متغیر اضافه کرده باشید. حال برای اجرا کد، می بایست آن متغیر را در محل اجرا دستورات تابع قرار دهیم، و حتی می توانیم متغیر theSubject$ را با نوشته های دیگر با استفاده از . الحاق کنیم. مطمئن شوید که 'content goes here ' کمی فاصله دارد. در حال حاضر محتوای ما کمی مشحص تر و به طور مستقیم بدون توجه به آنچه درون آن است به مسیر درخواست متصل می شود.

خوب! حالا آماده هستیم که متد بالا را اجرا کنیم، فایل را ذخیره کنید و به مرورگر خود برگردید. حال به جای اینکه از directions که در فایل routes.php تعریف شده است، از یک چیز متفاوتر مثل classes استفاده می کنیم، توجه داشته باشید که از هر نامی می توانیم استفاده کنیم، اگر از teachers استفاده کنیم به ما teachers content goes here بر می گرداند.

همانطور که می بینید همه کارها هموار است. ولی شاید در خط ۳۱ الحاقاتی که انجام داده ایم کمی خسته کننده باشد:

با یک تنظیم کوچک، می توانیم متغیر خود یعنی theSubject$ را درست بین علامت نقل قول برای برگشت مقدار قرار دهیم. برای این کار ابتدا از شمار خط ۲۹ تا ۳۲ را کپی کرده و در خط های بعدی past کنید. بعد، مسیر جدیدی را مشخص کنید. درست بعد از about و قبل از متغیر پوشه classes را اضافه می کنیم تا از مسیر های موجود تمایز  قائل شود.

همانطور که در بالا می بینید return خود را نیز تغییر داده ایم، علامت الحاق کردن را حذف کرده ایم و به جای آن متغیر خود را بین یک جفت آکولاد قرار داده ایم، این کار باعث می شود مقدار متغیر ما نمایش داده شود، نه نام متغیر!!! توجه داشته باشید که محتوای برگشتی باید بین " " قرار گیرید، نه بین ' ' . اگر بین ' ' قرار گیرد نام متغیر نمایش داده می شود. می توانید برای درک بهتر، خودتان امتحان کنید.

این فقط مثالی برای شروع از آنچه که می توان با مسریابی لاراول انجام داد است، در پست های بعدی با دیگر برنامه های کاربردی بیشتر آشنا خواهیم شد.