Missing required parameter for [×××]에 대한 해결 방법
오리지널 앱을 작성하고 있으므로 그 과정을 기사로 하고 있습니다.
이해가 모호한 곳도 많기 때문에, 지적 등 있으면 연락 주시면 감사하겠습니다.
이번에는
Missing required parameter for [×××]
가 나왔으므로 그 해결 방법을 기록으로 남깁니다.환경
버전
PHP
7.4.14
라라벨
8.24.0
mysql
8.0.23
도커
20.10.2
docker-compose
1.27.4
오류 발생
데이터의 일람 표시의 「상세」버튼으로부터 상세 화면으로 천이하는 구현을 실시했을 때에 에러가 일어났습니다.
app/Http/Controllers/GameController.php
public function show($id)
{
$game = Game::find($id);
return view('game.show', compact('game'));
}
위는 컨트롤러 설명입니다.
show 액션에서
$game = Game::find($id);
에서 id에서 당겨 온 데이터를 $game에 넣고 있습니다.그리고
return view('game.show', compact('game'));
view에 변수를 건네주어 상세 화면을 여는 액션입니다.resources/views/game/index.blade.php
<div class="table-responsive">
<table class="table table-hover">
<thead>
<tr>
<th>ボードゲーム名</th>
<th>プレイ時間</th>
<th>最小プレイ人数</th>
<th>最大プレイ人数</th>
<th>画像</th>
<th>詳細</th>
</tr>
</thead>
<tbody id="tb1">
@foreach($games as $game)
@if($game->image_path)
<tr>
<td>{{ $game->name }}</td>
<td>{{ $game->play_time }}</td>
<td>{{ $game->players_minimum }}</td>
<td>{{ $game->players_max }}</td>
<td><img src="{{ $game->image_path }}"></td>
<td class="text-nowrap">
<p><a href="{{ route('game.show') }}" class="btn btn-primary btn-sm">詳細</a></p>
</td>
</tr>
@endif
@endforeach
</tbody>
</table>
</div>
상기가 일람 표시 화면의 view입니다.
<a href="{{ route('game.show') }}" class="btn btn-primary btn-sm">詳細</a>
의 설명으로 상세 화면으로 천이하려고 하고 있습니다.여기서 다음 오류가 발생했습니다.
해결 방법
여기 의 기사를 참고로 했습니다.
감사합니다!
URL에 넣을 매개 변수를 전달할 수 없기 때문에
라는 것입니다.
resources/views/game/index.blade.php
<a href="{{ route('game.show', $game->id) }}" class="btn btn-primary btn-sm">詳細</a>
위와 같이 매개 변수를 전달하여 해결했습니다.
이상입니다.
Reference
이 문제에 관하여(Missing required parameter for [×××]에 대한 해결 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/mumucochimu/items/b5eb5e5a524f58393068텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)