[英]How do I change the hard code user id into the authenticated user?
在我的控制器中,我有以下代碼
$assignents =Assign::whereHas('users', function ($q) {
$q->where('user_id', 3);
})->get();
我希望數字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();
您可以通過以下方式獲取身份驗證用戶標識:
使用auth()
輔助函數
auth()->user()->id or auth()->id()
使用Auth
Facade
Auth::user()->id, Auth::id()
或者您可以通過Request
獲得
public function index(Request $request)
{
$request->user()->id;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.