با عرض سلام خدمت کاربران عزیز سایت پی وی لرن و کاربرانی که دوره کامل آموزش لاراول را دنبال می کنند، در این پست آموزشی به آموزش قالب Blade در لاراول میپردازیم. موتورهای قالب در لاراول ، یک موتور ساده و در عین حال بسیار کارآمد جهت ساخت قالب است، که به همراه چارچوب نرم افزاری لاراول در اختیار برنامه نویس قرار می گیرد. بر خلاف دیگر موتورهای قالب در لاراول ساز پرطرفدار PHP، Blade شما را در استفاده از کد ساده و خالص PHP در View ها آزاد می گذارد. تمامی view های مبتنی بر قالب های Blade در لاراول به کد ساده ی PHP کامپایل شده و سپس به طور موقت در حافظه ی نهان ذخیره می شوند حداقل تا زمانی که توسط شما ویرایش شوند. از آنچه گفته شد نتیجه می گیریم که قالب های Blade در لاراول تقریبا هیچ overhead و سرباری اضافه نمی کند. فایل های view مبتنی برBlade همگی از پسوند.blade.php استفاده می کنند و در پوشه ی resources/views ذخیره می شوند.
در ادامه ی مباحث مراحل ایجاد قالب های Blade در لاراول را بررسی خواهیم کرد.
زمانی که با سایر قالب ها مقایسه میکنیم متوجه میشویم که Blade در موارد زیر منحصر به فرد است:
ساختار دایرکتوری کامل Laravel در تصویر زیر در اینجا نشان داده شده است.
شما می توانید مشاهده کنید که تمام نمایش ها در دایرکتوری منابع / views ذخیره می شوند و نمایش پیش فرض برای چارچوب Laravel welcome.blade.php است.
لطفا توجه داشته باشید که قالب های دیگر Blade نیز به طور مشابه ایجاد می شوند.
شما باید از مراحل زیر برای ایجاد یک طرح قالب Blade استفاده کنید .
مرحله ۱
یک پوشه طرح بندی داخل پوشه منابع / views ایجاد کنید. ما قصد داریم از این پوشه برای ذخیره همه پوسته ها با هم استفاده کنیم.
یک نام فایل master.blade.php ایجاد کنید که کد زیر را با آن مرتبط می کند.
1 2 3 4 5 6 7 8 | <html> <head> <title>DemoLaravel - @yield('title')</title> </head> <body> @yield('content') </body> </html> |
مرحله ۲
در این مرحله باید طرح را گسترش دهید. گسترش یک طرح شامل تعریف عناصر ابتدایی است.
لاراول از دستورالعمل Blade @ extends برای تعریف عناصر ابتدایی استفاده می کند.
وقتی طرح را گسترش می دهید، لطفا به نکات زیر توجه کنید.
برای گسترش طرح بالا به مثال زیر توجه کنید.
1 2 3 4 5 6 7 8 9 | @extends('layouts.app') @section('title', 'Page Title') @section('sidebar') @parent <p>This refers to the master sidebar.</p> @endsection @section('content') <p>This is my body content.</p> @endsection |
مرحله ۳
برای پیاده سازی عناصر ابتدایی در نمایش ها، باید چیدمان را به نحوی که مورد نیاز است تعریف کنید.
مشاهده تصویر در اینجا نشان داده شده است.
شما می توانید پیدا کنید که هر یک از لینک های ذکر شده در صفحه اصلی لینک ها هستند.
لطفا توجه داشته باشید که با استفاده از روش فوق الذکر می توانید آنها را به عنوان عناصر ابتدایی با کمک موتورهای قالب در لاراول ایجاد کنید.
قالب های Blade در لاراول به شما اجازه می دهد دستورات سفارشی خود را تعریف نمایید. می توانید از دستور directive برای ثبت و ایجاد یک دستور (directive) جدید استفاده کنید. زمانی که کامپایلر Blade با یک directive جدید برخورد می کند، بلافاصله تابع callback ارائه شده را به همراه پارامترهای ورودی آن فراخوانی می کند.
موفق باشید.