Делали проект с разными пользователями. Я заметил, что могу использовать @if
, чтобы запретить конкретному пользователю определенную функцию, но я также могу использовать @can
. Может кто-нибудь сказать мне, каковы их различия. Я не зарегистрировал никаких политик в AuthServiceProvider
, но я все еще могу использовать @can
метод. Я просто имею в виду тип пользователя. Я покажу вам некоторый код.
Может
@can($global_user->role != 0)
<li class="{{ $mnuname == 'Issue' ? 'active' : '' }}">
<a href="{{ route('admin.issues') }}" onclick="return LoadingOverlay();">
<i class="fa fa-list"></i>
<span>Issue Tracker</span>
</a>
</li>
@endcan
Если
@if($global_user->role != 0)
<li class="{{ $mnuname == 'Student' ? 'active' : '' }}">
<a href="{{ route('admin.students') }}" onclick="return LoadingOverlay();">
<i class="fa fa-child"></i>
<span>Students</span>
</a>
</li>
@endif
Редактировать: Могу ли я также использовать @can
внутри @if
операторов, подобных этому?
@if($global_user->role != 0)
<li class="treeview
{{ $mnuname == 'New Issue' ? 'active' : '' }}
{{ $mnuname == 'Issue' ? 'active' : '' }}
">
<a href="#">
<i class="fa fa-bug"></i> <span>System Issues</span>
<span class="pull-right-container">
<i class="fa fa-angle-left pull-right"></i>
</span>
</a>
<ul class="treeview-menu">
<li class="{{ $mnuname == 'New Issue' ? 'active' : '' }}">
<a href="{{ route('admin.issues.create') }}" onclick="return LoadingOverlay();">
<i class="fa fa-edit"></i>
<span>Report an Issue</span>
</a>
</li>
@can($global_user->role != 3)
<li class="{{ $mnuname == 'Issue' ? 'active' : '' }}">
<a href="{{ route('admin.issues') }}" onclick="return LoadingOverlay();">
<i class="fa fa-list"></i>
<span>Issue Tracker</span>
</a>
</li>
@endcan
</ul>
</li>
@endif