@Danny971 So many things.
Consider this update method.
public function update(Game $game, GameFormRequest $request)
{
$game->update($request->validated);
return redirect(route('games.index'));
}
It uses route model binding to fetch the record from the database, and a form request for the validation.
The route would look like this.
Route::put('games/{game}', [GamesController::class, 'update')->name('games.update');
And the form request class like this
class GameFormRequest extends FormRequest
{
public function rules(): array
{
return [
'title' => ['required', 'string'],
'release_year' => ['required'],
'blurb' => ['required', 'string'],
'genre_name' => ['required', 'string'],
'format_name' => ['required', 'string'],
'platform_name' => ['required', 'string'],
];
}
}
You really don't need to write any custom code like you have done, I suggest reading the docs on Route model binding, form requests and validation.