3 回答

TA貢獻1842條經驗 獲得超13個贊
錯誤信息:
缺少 [Route: profiluser] [URI: santri/{id}/profile] 的必需參數。
告訴您您缺少此路線的參數: profiluser
正如你在這里看到的,你沒有使用正確的參數調用路由,你試圖傳遞整個對象而不是 id,所以而不是這樣:
return redirect()->route('profiluser', $santri);
做這個:
return redirect()->route('profiluser', $santri->id);
但是既然你已經傳遞了整個對象,你也可以這樣做,讓我們稱之為方法 B。
在這里,您要使用傳遞的 id 查找模型:
public function profile($id)
{
$santri = Santri::find($id);
return view('santri.profile', ['santri'=>$santri]);
}
但是由于您已經傳遞了整個對象,您可以這樣做:
public function profile(Santri $santri)
{
return view('santri.profile', ['santri' => $santri]);
}
或者這個,在我看來更清晰:
public function profile(Santri $santri)
{
return view('santri.profile', compact('santri'));
}

TA貢獻1851條經驗 獲得超3個贊
您需要傳遞$santry->id
而不僅僅是 $santry。將行更改為:
return redirect()->route('profiluser', [$santri->id]);

TA貢獻1890條經驗 獲得超9個贊
根據您的路線:
Route::get('/santri/{id}/profile', 'SantriController@profile')->name('profiluser');
您必須傳遞用戶 ID,如下所示:
return redirect()->route('profiluser', ['id' => $request->user()->id]);
- 3 回答
- 0 關注
- 299 瀏覽
添加回答
舉報