php - 如何在 laravel blade 模板中检查当前的身份验证守卫及其 guest ?

标签 php laravel laravel-5 laravel-blade laravel-7

我正在做一个 Laravel 项目。我有 2 个身份验证 guard 。这是我第一次使用多重身份验证保护。

通常在前端,我使用将访客和登录用户的代码分开为:

@guest
    //Data for Guest Users.   
@endguest

@auth
    //Data for Logged in Users.
@endauth

现在有多个守卫,@guest 只有在我使用默认守卫登录系统时才为假。即,即使我通过“Admin Guard”登录,@guest 仍处于事件状态。如何检查用户是否是 Admin Guard 的 guest 或用户是否通过 Admin Guard 登录?

最佳答案

这取决于你的守卫名字是什么。通常 'web' 是 laravel 中的默认守卫。它将在配置目录中的 auth.php 中被提及为:

defaults' => [
    'guard' => 'web',
    'passwords' => 'users',
],

因此,无论何时检查@guest 或@auth,都会检查'web' Guard。要检查不同的 guard ,比如“管理员”,您可以将其指定为:

@guest('admin')
    //Data for Guest Users of admin guard.   
@endguest

@auth('admin')
    //Data for Logged in Users of admin guard.
@endauth

希望这对您的疑问有所帮助。如果您对此有任何疑问,请随时询问更多。还要确保在发布问题之前检查社区。因为像这样的类似问题已经得到回答。

关于php - 如何在 laravel blade 模板中检查当前的身份验证守卫及其 guest ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61331527/

相关文章:

javascript - 每当我的 if 条件为假时, Canvas 就会变成空白

php - 使用 php 在 mysql 中将时间和日期添加到日期时间?

php - 如何在 Laravel 中阻止相同类型的用户访问其他数据?

php - laravel 和 apache mod_status

jquery - 如何在不刷新页面的情况下自动将新插入的mysql数据显示到laravel View 中?

javascript - AJAX JQUERY 变量

sql - Laravel 查询生成器加入原始 ON 表达式

php - 当我使用 Maatwebsite\Excel 包并且它是 ToCollection 问题时,如何正确验证 Excel 文件的内容?

php - Laravel 5.2.31 中 API 的 TokenMismatchException

php - Laravel 5.3 记住我身份验证问题