試圖顯示當前登錄用戶的個人資料。我在做什么錯。這是控制器上的功能。我正在使用 Laravel 9
public function show(User $user)
{
return view('users.index', with('user', $user));
}
這是路線
Route::resource('users', UsersController::class)->middleware('auth');
還有我的通用布局頁面
<x-dropdown-item href="/users/{{ auth()->user()->username }}" >Account</x-dropdown-item>
當我單擊鏈接時,我找不到用戶。
uj5u.com熱心網友回復:
您正在使用路由模型系結,除非另有配置,否則需要您提供帶有模型的路由id。您為它提供了 a username,因此 Laravel 拋出 a 404,因為它無法在資料庫中找到相關記錄。
如果您替換username為id,則系結應該可以作業。
<x-dropdown-item href="/users/{{ auth()->user()->id }}">
Account
</x-dropdown-item>
uj5u.com熱心網友回復:
代碼很好。你確定你有一個帶有用戶名的路由,資源路由正在使用 id。
uj5u.com熱心網友回復:
要訪問這樣的模型,您需要在路由中指定 id,例如:/users/{id}
但是,您在這里嘗試做的是訪問登錄的用戶模型,您可以使用外觀訪問該模型Auth::user();
您可以在代碼中的任何位置隨時訪問用戶,并且無需將其傳遞給錨鏈接,除非發送到外部系統。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/514635.html
下一篇:如何改善多種口才條件?
