[英]View Not Found While Trying To Use Route Model Binding
我想編輯用戶,所以我將其添加為鏈接:
<a href="{{ route('users.edit', $user->name) }}" class="on-default edit-row">Edit</a>
在 Controller 處:
public function edit(User $user)
{
$roles = Role::where('slug', '!=', 'super-admin')->get();
return view('admin.users.edit', compact('roles', 'user'));
}
所以你可以看到我已經從User
Model 調用了$user
但現在問題是,它說:
404 | 未找到
但是,如果我將User $user
刪除到$id
,它將正常工作!
那么這里出了什么問題呢? 如何在此處正確使用 Route Model 綁定?
我真的很感激你們的任何想法或建議......
提前致謝。
您必須將用戶的 ID 而不是用戶名傳遞給您的路線。
<a href="{{ route('users.edit', $user->id) }}" class="on-default edit-row">Edit</a>
否則,如果您想使用用戶名,您有兩個選擇
public function getRouteKeyName()
{
return 'name';
}
Route::get('/users/{user:name}/edit', function (User $user) {
// ...
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.