在我的側(cè)邊欄中,我列出了 od 默認(rèn)城市。當(dāng)我點(diǎn)擊每個(gè)城市時(shí),我會(huì)從某個(gè) API 獲取該城市的一些數(shù)據(jù)。那部分有效。在同一個(gè)側(cè)邊欄中,我還列出了一些最喜歡的城市,注冊(cè)用戶可以根據(jù)需要添加到該列表中,稍后他們只需單擊它們就可以獲取他們最喜歡的城市的一些數(shù)據(jù)。聽起來很簡(jiǎn)單,但這部分不起作用。問題是 Laravel 路由系統(tǒng)只從我的收藏列表中為列表中的每個(gè)最喜歡的城市獲取一個(gè) ID。這是路線:Route::get('/favorites/{id}/', 'FavoriteController@show')->name('showFavoriteWeather');這是控制器: public function show($id){ $favorite_city = Favorite::find($id); // dd($favorite_city); $api_key = ""; $url = "api.openweathermap.org/data/2.5/group?id=$favorite_city->city_id&units=metric&appid=$api_key"; $ch = curl_init($url); curl_setopt($ch,CURLOPT_USERAGENT,$_SERVER['HTTP_USER_AGENT']); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $json_response = curl_exec($ch); $data = json_decode($json_response, true); // dd($data); return view('showFavoriteWeather', compact('data')); }最喜歡的城市在側(cè)邊欄中列出得很好,但每個(gè)鏈接的 URL 都是相同的:localhost:8000/favorites/3ID 始終為3,棘手的部分是我的收藏夾表中實(shí)際上沒有任何具有該 ID 的內(nèi)容。我一天前刪除了那行。所以我的問題是為什么我最喜歡的城市的 URL 中只顯示 ID 3?我使用的數(shù)據(jù)庫(kù)是 MySQL。除此之外,當(dāng)我手動(dòng)將URL 中的ID 3更改為1或2或我數(shù)據(jù)庫(kù)中的任何其他值時(shí),一切正常 - 我得到了我選擇的城市所需的數(shù)據(jù)。組裝不起作用的鏈接的刀片中的代碼如下所示:<ul>@foreach ($favorites as $key => $favorite) <li><a href="{{ route('showFavoriteWeather', $id) }}">{{ $favorite->city_name }}</a></li> @endforeach</ul>
Laravel 路由在 URL 中僅顯示一個(gè) ID,即使該 ID 不存在于表中
阿波羅的戰(zhàn)車
2022-07-22 19:31:11