在我的应用程序中,我使用scaffolding方法快速创建身份验证。但是我在玩它时遇到了一个问题。实际上,我可以获得Auth::user()->name
当前登录的用户用户名和其他详细信息,但我无法获取用户ID,我尝试使用Auth::user()->id
和Auth::id()
获取ID,但所有徒劳的。有没有任何方法可以获取当前登录的用户ID?
我尝试了什么:
我在AuthServiceProvider中创建了一个变量,然后尝试在这个视图中获取ID
的ServiceProvider
$id = Auth::id();
view()->share('id', $id);
查看
> <li><a href="{{ url('/users/{!! $id !!}') }}"><i class="fa fa-btn > fa-sign-out"></i>Profile</a></li>
下一步尝试查看:
<li><a href="{{ url('/users/{!!Auth::user()->id!!}') }}"><i class="fa fa-btn fa-sign-out"></i>Profile</a></li>
我想获取登录的用户ID,以便向每个用户显示他/她的个人资料。
答案 0 :(得分:1)
您正在{!! !!}
内进行{{ }}
回音,但您无法对其进行嵌套。这就像拥有<?php echo <?php echo ... ?> ?>
一样。嵌套打印也在引号内。假设您的id
变量设置正确,请按以下方式调用:
<a href="{{ url('/users/' . $id) }}">
太容易读了,对吧? :)
答案 1 :(得分:0)
在视图中尝试以下操作:
{{ Auth::user()->name }}
在Controller中尝试以下操作:
\Auth::user()->id;