Скрытие страницы для указанного пользователя c - PullRequest
0 голосов
/ 11 апреля 2020

Недавно я получил запрос на скрытие определенной страницы от определенного типа пользователя. для этого я создал структуру с именем «master» VARCHAR, NULL, внутри таблицы «users». Я хочу указать «1» для пользователя, чтобы он видел страницу, и «0» для тех, кто ее не видит. Что было бы лучшим предложением?

  <li>
    <a href="masters">
      <i class="now-ui-icons users_single-02"></i>
      <p>Materials</p>
    </a>
  </li>



Route::get('/masters', function () {
    return view('masters');
});

Ответы [ 3 ]

1 голос
/ 11 апреля 2020

вы можете использовать Гейтс, в вашем App\Providers\AuthServiceProvider

public function boot()
{
    $this->registerPolicies();

    Gate::define('masters', function ($user) {
        return $user->masters == "1";
    });
}

и тогда ваши маршруты будут. Это позволит скрыть всю страницу.

Route::get('/masters', function () {
    return view('masters');
})->middleware('can:masters');

, если вы хотите скрыть часть страницы

@can('masters')
    <!-- The Current User Can see this part -->
@endcan
0 голосов
/ 11 апреля 2020

Вы хотели бы скрыть блок HTML внутри шаблона Blade? Вы можете использовать условие в блейде, чтобы проверить пользователя, что-то вроде этого:

@if (Auth::user()->masters) 
  <li>
    <a href="masters">
      <i class="now-ui-icons users_single-02"></i>
      <p>Materials</p>
    </a>
  </li>
@endif
0 голосов
/ 11 апреля 2020

Привет, я думаю, что вы используете Laravel, сейчас я использую другой фреймворк, поэтому я немного забыл синтаксис, поэтому для этого вам нужно определить промежуточное программное обеспечение, которое вы видите в форме регистрации, там определено промежуточное программное обеспечение который ограничивает доступ к вашему веб-приложению, поэтому связываете промежуточное ПО и смотрите курс об этом с этим понятием, с помощью которого вы можете ограничить доступ и указать для гостя и пользователя c все, что вы хотите отобразить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...