در جلسه قبل یاد گرفتیم تا چجوری فریم ورک سیمفونی رو نصب و راه اندازی کنیم در این جلسه هم یاد میگیریم تا اولین صفحه وبمون رو با فریم ورک سیمفونی ایجاد کنیم.
ساخت اولین صفحه با فریم ورک سیمفونی
ایجاد صفحه در فریم ورک سیمفونی دارای دو مرحله هست؛ مرحله اول routing (یا آدرس صفحه) و مرحله دوم کنترولر.
مثلا ما میخواهیم یک صفحه درباره ما به آدرس about بسازیم؛ برای ایجاد صفحه در ابتدا ما باید یک کنترولر ایجاد کنیم برای ایجاد یک کنترولر به مسیر زیر بروید.
src/AppBundle/Controller
خب تا یادم نرفته قواعد ایجاد کنترولر در فریم ورک سیمفونی رو خدمتتون عرض کنم.
اول از همه ما می بایست کنترولرمون در مسیر بالا و در داخل دایرکتوری Controller ایجاد کنیم.
قانون نام گذاری کنترولر با فرض اینکه نام کنترولری که میخواهیم بسازیم about هست بصورت زیر هستش :
AboutControllerفکر کنم متوجه شده باشید حتما بایستی اول حرف نام کنترولر با حرف بزرگ لاتین و حتما عبارت Controller هم در آخر کلمه باشه؛ این از قواعد نام گذاری کنترولر.
خب یه سری قواعد رو هم باید داخل فایل کنترولری که ایجاد کردیم رعایت کنیم.
به کد زیر دقت کنید:
namespace AppBundle\Controller; use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route; use Symfony\Component\HttpFoundation\Response; class AboutController { /** * @Route("/about") */ public function showAction() { return new Response('<h1>This is my about page</h1>'); } }
سه خط کد اول name space هستند و وجود اونها لازم و ضروری هست (چون ما از آدرس دهی (routing) و Response (پاسخدهی) استفاده کردیم use کردن اینها لازمه ) اگر از IDE های قدرتمندی نظیر پی اچ پی استورم استفاده کنید و افزونه سیمفونی رو هم نصب و کانفیگ کرده باشید خودکار نیم اسپیسها براتون ایجاد میشه! و نیازی نیست خودتون رو درگیر نیم اسپیسها کنید.
میرسیم به نام کلاس نام کلاس حتما باید با نام فایل کنترولر یکی باشه در غیر اینصورت ارور میده.
داخل کلاسمون یک تابع با نام showAction ایجاد کردیم.
بالای نام تابع یک کامنت هست که اگر از پی اچ پی استورم استفاده کنید با زدن عبارت @Route نیم اسپیس مربوطه براتون اضافه میشه!
در داخل تابع showAction هم یک نمونه از کلاس Response ایجاد کردیم و بهش مقدار دادیم!
شما میتونید هر چیزی رو به عنوان مقدار بهش اضافه کنید.
بعد از انجام موارد بالا و ایجاد یک کنترولر وارد دایرکتوری پروژتون بشید و در همونجا ترمینال یا کامندلاینتون رو باز کنید و عبارت زیر رو برای اجرای پروژتون وارد کرده و اینتر بزنید.
php bin/console server:run
بعد از اجرای دستور بالا مرورگرتون رو باز کنید و در آدرس بار آدرس زیر رو وارد کرده و اینتر بزنید:
http://127.0.0.1:8000/
اگه کنترولر دیفالت سیمفونی رو حذف یا دستکاری نکرده باسید با صفحه پیشفرص سیمفونی همانند تصویر زیر مواجه خواهید شد.و اگر هم در جایی اشتباه کرده باشید با ارور!
خب حالا به آخر آدرستون عبارت /about رو اضافه کرده و اینتر بزنید.
http://127.0.0.1:8000/about
حالا شما وارد اولین صفحه که خودتون ساختید وارد شدید و به طبع با متن زیر روبرو خواهید شد:
This is my about page
متن بالا متنی هست در داخل متد showAction در قسمت Response وارد کردیم.
اینم از این جلسه آموزشی امیدوارم بدردتون خورده باشه.
پ.ن: منظور از دایرکتوری همون پوشه هست ما کاربران گنو / لینوکسی بجای پوشه دایرکتوری میگیم :-) اینم هم واسه ویندوزیهای غلیظ گفتم تا نگن دایرکتوری چه صیغهای هست :-) .
خوش باشید.
شدیدا نیاز دارم در آینده فریم ورک Yii کار کنم(نیاز کاری)، امیدوارم بعد آموزش Yii رو هم بذارین