Скрыть виджеты в вояджере - PullRequest
0 голосов
/ 17 января 2019

Я работаю в laravel 5.6 с Voyager и хочу реализовать виджеты 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'),
        ],
        // 'image' => voyager_asset('images/widget-backgrounds/03.jpg'),
    ]));
}

1 Ответ

0 голосов
/ 31 января 2019

вам нужно изменить метод shouldBeDisplayed виджета следующим образом:

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

он просто проверяет, является ли роль текущего пользователя администратором или нет.

удачи

...