انتقل إلى محتوى الدرس

Blade Can and Cannot Directives توجيهات الصلاحيات Can في Blade

فحص الصلاحيات في المسارات والمتحكمات وقوالب Blade عبر @can و @cannot وتطبيق قواعد التحصين الأمني الشامل في Laravel.
1 صفوف تعليمية
إطار العمل Laravel
0 مشاهدة

شرح صفوف ومحتوى الفقرة

الصف 1 شرح توضيحي

لتقديم واجهة مستخدم نظيفة لا تظهر فيها أزرار التعديل والحذف إلا لمن يملك صلاحية تنفيذها فعلياً، استخدم توجيهات @can و @cannot و @canany داخل قوالب Blade. وكما هو الحال في المتحكمات، مرر كائن السجل لفحص التعديل أو اسم الكلاس لفحص زر الإضافة.

  • إظهار المشروط بالصلاحية (@can): يعرض زر التعديل فقط إذا سمحت سياسة النموذج للمستخدم الحالي.
  • العرض عند عدم الصلاحية (@cannot): يعرض تنويهاً أو نصاً للقراءة فقط لمن لا يملكون صلاحية التعديل.
  • توفر أي صلاحية (@canany): يعرض قائمة الإجراءات إذا كان المستخدم يملك واحدة على الأقل من الصلاحيات المذكورة.
PHP
@can('create', App\Models\Post::class)
    <a href="{{ route('posts.create') }}">New Post</a>
@endcan

@can('update', $post)
    <a href="{{ route('posts.edit', $post) }}">Edit</a>
@endcan