лезвие laravel - как скрыть отображение элемента html для определенных маршрутов - PullRequest
0 голосов
/ 30 августа 2018

люди!

Я использую Laravel 5.6 с установленным Hyn Laravel-Tenancy.

У меня есть главное меню, которое одинаково для всех арендаторов (поддоменов), однако для того или иного конкретного арендатора (поддоменов) я бы хотел, чтобы некоторые элементы отображались из этого главного меню, но для всех остальных арендаторов, эти пункты меню не видны и недоступны даже при вызове по URL.

В Blade я использовал "@if route :: has", но даже ограничил этот маршрут до определенного субдомена, этот маршрут доступен для всех других субдоменов, так что @if получает значение true и в итоге отображает меню пункт.

Я не нахожу простого решения, мог бы создать помощника, который идентифицирует URL-адрес и, если он принадлежит определенному поддомену, отобразит элемент, а для других поддоменов не будет отображаться, но «я предполагаю», что он должна иметь встроенную форму, использующую Blade вместе с «маршрутами \ веб» для достижения этого результата.

Спасибо !!!

routes\web.php

enter image description here

1 Ответ

0 голосов
/ 19 сентября 2018

использовать ворота и консервную банку в authserviceprovider создайте гейт так:

 $gate->define('see-menu',function(){
            //check domains or rules or every thing that you need to check to obtain access
           //return true if user have access and false if not access
            });

и, по вашему мнению, можете проверить см. Меню

@can('see-menu')
//your code 
         <li class="devider"></li>.......
@endcan
...