• 0

إخفاء المعلومات في Laravel Voyager

أرغب بإضافة widgets محددة للمستخدمين ضمن Voyager، ولكن تظهر لي جميع القطع للمستخدم وأريد بدلاً من ذلك إظهار قطع محددة للمشرفين وإخفائها عن باقي المستخدمين. حاولت تنفيذ الكود التالي:

public function run()
{

     $count = \App\Organization::count();


    $string = trans_choice('Organization', $count);


    return view('voyager::dimmer', array_merge($this->config, [
        'icon' => 'voyager-edit',
        'title' => [
            'text' => "{$string} {$count}",
            'link' => route('org_data'),
        ],
       
    ]));
}

ولكن يتم إظهارها بشكل كامل لجميع المستخدمين. كيف يمكنني تحقيق ذلك؟

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
شارك على الشبكات الإجتماعية
  • 0

تحتاج إلى تغيير دالة shouldBeDisplayed الخاصة ب Widgetعلى النحو التالي:

public function shouldBeDisplayed(){
   return auth()->user()->hasRole('admin');
}

فهنا يتحقق من أن دور المستخدم الحالي هو المسؤول أم لا.

1 شخص أعجب بهذا

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
شارك على الشبكات الإجتماعية

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن