如何将硬代码用户ID更改为已认证的用户?

在我的控制器中,我有以下代码


    $assignents =Assign::whereHas('users', function ($q) {

        $q->where('user_id', 3); 

    })->get();

我希望数字3是已登录的经过身份验证的用户。如何重写此代码?


茅侃侃
浏览 189回答 3
3回答

莫回无

您可以使用Auth门面来检索经过身份验证的用户。$assignents = Assign::whereHas('users', function ($q) {    $q->where('user_id', Auth::user()->id); })->get();记住张贴您尝试过的东西。它使我们更轻松地为您解决问题,而不仅仅是为您编写代码。我建议您阅读本节:“如何提问”是一个很好的资源,当我初次访问该站点时,它可以帮助我提出更好的问题!

森林海

您可以在没有Auth Facade的情况下进行操作$assignents = Assign::whereHas('users', function ($q) {    $q->where('user_id', auth()->user()->id); })->get();或者$assignents = Assign::whereHas('users', function ($q) {    $q->where('user_id', auth()->id()); })->get();

LEATH

您可以通过以下方式获取身份验证的用户ID:使用auth()辅助功能auth()->user()->id or auth()->id()使用Auth立面Auth::user()->id, Auth::id()或者你可以得到它 Requestpublic function index(Request $request){    $request->user()->id;}
打开App,查看更多内容
随时随地看视频慕课网APP