如何在Laravel中向访客用户显示或隐藏我的表的一部分?

问题描述 投票:0回答:2

我有一个显示表的页面,我只想隐藏我的表的1列,只显示给管理员用户角色。

但我想向尚未登录我网站的访客用户显示其他列。 当我使用这段代码时:

<table>
<tr>
<td>
...
</td>
@if(Auth::user()->isAdmin())
<td>
only Admins Can See This Column
</td>
@endif
<td>
...
</td>
</tr>
</table>

它隐藏所有页面并重定向到登录并仅显示给管理员用户。

但我需要将没有该列的所有表显示给未登录的访客用户,我该怎么做?

laravel roles user-roles laravel-authentication
2个回答
1
投票

您可以使用@guest blade的指令。

<table>
    <tr>
        <td>
        ...
        </td>
        @if(Auth::user()->isAdmin())
        <td>
            only Admins Can See This Column
        </td>
        @endif
        @guest
        <td>
           This is only for guest!
        </td>
        @endguest
        ...
        </td>
    </tr>
</table>

0
投票

我找到了解决方案:::我们可以为访客隐藏并通过以下代码向我们的角色用户显示:

<table>
    <tr>
        <td>
        ...
        </td>
        @if(Auth()->check() and Auth::user()->isAdmin())
        <td>
            only Admins Can See This Column
        </td>
        @endif
        <td>
           ...
        </td>
        ...
        </td>
    </tr>
</table>
© www.soinside.com 2019 - 2024. All rights reserved.