وداعًا للكود الفوضوي: سيطرة على عروض لارافيل باستخدام Blade

وداعًا للكود الفوضوي: سيطرة على عروض لارافيل باستخدام Blade



لارافل منذ 5 أشهر

إنشاء عرض ديناميكي باستخدام محرك القوالب Blade في لارافيل

لارافيل، إطار عمل PHP شهير، يبسّط عملية تطوير الويب من خلال محرك القوالب المدمج الخاص به: Blade. يوفر Blade نهجًا قويًا وبسيطًا لإنشاء عرض HTML ديناميكي، حيث يفصل منطق العرض عن كود التطبيق. تتعمق هذه المدونة في المفاهيم الأساسية لـ Blade وتوضح بنيته الأساسية لإنشاء صفحات ويب مرنة.

احتضان العروض الديناميكية باستخدام Blade

تخيل موقعًا يعرض قائمة بالمنتجات. يتطلب كل منتج معلومات فريدة مثل الاسم والوصف والسعر. سيتضمن PHP التقليدي تضمين هذه البيانات مباشرة في HTML، مما يؤدي إلى كود فوضوي يصعب صيانته. ي حل Blade هذه المشكلة عن طريق فصل بنية HTML (العرض) عن منطق استرداد البيانات (المتحكم). ويعزز هذا الفصل كودًا أكثر نظافة وتحديثات أسهل.

إليك كيفية تحقيق Blade للعروض الديناميكية:

  1. قوالب Blade: أنشئ ملفات بامتداد .blade.php تُخزن عادةً في الدليل resources/views. تحتوي هذه الملفات على ترميز HTML يتخلله توجيهات Blade.
  2.  تمرير البيانات: تمرر متحكمات Laravel البيانات (المتغيرات، المصفوفات، الكائنات) إلى عروض Blade. تصبح هذه البيانات قابلة للوصول إليها داخل القوالب.
  3. معالجة العروض: يعالج محرك قالب Blade التوجيهات والبيانات، وينشئ رمز HTML النهائي الذي يتم إرساله إلى المتصفح.

إتقان بنية Blade الأساسية

توجيهات Blade هي تعليمات تبدأ بالرمز @. دعونا نستكشف بعض التوجيهات الأساسية:

  • @if و @else: توجيهات تحكم التدفق تُستخدم للبيانات الشرطية.

HTML

@if ($user->isAdmin)
  <p>مرحبا بالمسؤول!</p>
@else
  <p>مرحبا، {{ $user->name }}!</p>
@endif

يتحقق هذا المثال مما إذا كانت خاصية isAdmin للمستخدم مضبوطة على true. إذا كانت الإجابة نعم، فإنه يعرض رسالة للمسؤول. وإلا ، فإنه يعرض تحية شخصية باستخدام المتغير $user->name.

  • @foreach: تتكرر عبر مجموعات البيانات.

HTML

@foreach ($منتجات as $منتج)
  <div class="منتج">
    <h2>{{ $منتج->اسم }}</h2>
    <p>{{ $منتج->سعر }}</p>
  </div>
@endforeach

تتكرر هذه الحلقة عبر مجموعة $منتجات ، حيث تعرض اسم وسعر كل منتج داخل حاوية منتج.

  • @include: تدرج قالب Blade آخر داخل القالب الحالي، مما يعزز إعادة الاستخدام.

HTML

<header>
  @include('layouts.header')
</header>

<main>
</main>

<footer>
  @include('layouts.footer')
</footer>

هنا ، يدمج التوجيه @include القوالب header.blade.php و footer.blade.php ، مما يعزز تناسق الرأس والتذييل عبر صفحات متعددة.

هذه مجرد أمثلة قليلة على قدرات Blade. باستخدام Blade، يمكنك إنشاء عروض ديناميكية وقابلة لإعادة الاستخدام، مما يحافظ على نظافة تطبيقات Laravel الخاصة بك وإمكانية صيانتها. استكشف وثائق Laravel الرسمية للحصول على قائمة شاملة بالتوجيهات والميزات لتحسين تجربة تطوير الويب باستخدام Blade.