[英]Laravel 7 Missing required parameters
因此,無論我做什么,我都會不斷收到此錯誤。 我不會收到此錯誤的唯一方法是不調用控制器函數。
Route::get('/station/{id}/edit', [StationController::class, 'showStationEdit'])->name('editStation');
在 HTML 中我有
href="{{ route('editStation', $stationId) }}
我也試過
href="{{ route('editStation', ['id' => $stationId] ) }}"
最后是函數本身
public function showStationEdit($id) {}
無論我更改/做什么,我都會收到此錯誤
Missing required parameters for [Route: editStation] [URI: station/{id}/edit].
這是我正在調用的 URL
127.0.0.1/station/1/edit
但是當我使用下面的代碼時,它起作用了..>
Route::get('/station/{id}/edit', function($id) {
//.. something
})->name('editStation');
您可以更改參考類型。 例如,您可以像這樣在 ENV 文件中描述您的網站名稱:
application_url = 'yourdomain.com or local ip http://127.0.0.1'
然后,您可以像這樣在 html 上調用您的網址:
href="{{env('application_url')}}/145/edit"
你可以像這樣描述你的路線:
Route::get('/station/{id}/edit', [StationController::class, 'showStationEdit']);
或者像這樣直接使用您的 href,如果您在本地工作,您的 IP 很重要:
href="http://127.0.0.1/1254/edit"
我希望它回答你解決你的問題。
這里有一些變化,不確定到底是什么導致了你的問題,但這是有效的:
路線
Route::get('/station/{id}/edit', 'StationController@showStationEdit')->name('editStation');
控制器
class StationController extends Controller
{
public function showStationEdit($id) {
return view('edit', ['id' => $id]);
}
}
查看:(edit.blade.php)
The id is: {{ $id }}
HTML
<a href="{{ route('editStation', 5) }}">Test</a>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.