我明白了:
Trying to get property 'role' of non-object (View: E:\xampp\htdocs\demo\resources\views\pages\home.blade.php)
我创建了一个项目,在那里我创建了管理员+用户“角色”以获得登录权限,并立即重定向到 home.blade.php。
在 home.blade.php 中我添加以下语法:
@if(Auth::user()->role == 'admin')
<meta http-equiv="REFRESH" content="0;url=admin">
@else
<p>Hello!</p>
@endif
我的目标是让管理员进入主页并重定向到管理页面,而用户仅进入主页。
我的问题是:如果访问 home.blade.php 没有登录,我会收到如下错误:
Trying to get property 'role' of non-object (View: E:\xampp\htdocs\demo\resources\views\pages\home.blade.php)
最佳答案
当您未登录时,用户为 null(非对象)。
您可以通过在尝试访问其属性之前检查用户是否已登录来解决此问题。
@if(Auth::check() && Auth::user()->role === 'admin')
关于php - 拉拉维尔 5.7 : Trying to get property 'role' of non-object,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57352923/