Ola. Estou seguindo o beabá conforme o vídeo, mas estou travado em um problema há algumas horas e preciso de ajuda. Apesar de ninguém ter respondido dúvidas minhas até hoje, vou manter a esperança.
// USO O PHP 8.3.7 — Laravel 11.10.0
Estou na aula 2.1 (Lapidando a aplicacao / Excluindo uma série).
Quando fui adicionar ao index.blade.php o formulário para deletar as séries, dá o seguinte erro:
Missing required parameter for [Route: series.destroy] [URI: series/destroy/{serie}] [Missing parameter: serie].
O arquivo está assim:
web.php
use App\Http\Controllers\SeriesController;
use Illuminate\Support\Facades\Route;
Route::get('/', function () {
return redirect('/series');
});
Route::resource('/series', SeriesController::class)
->only('index','create','store');
Route::post('/series/destroy/{serie}', [SeriesController::class, 'destroy'])
->name('series.destroy');
Serie.php
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class Serie extends Model
{
use HasFactory;
protected $fillable = ['nome'];
}
index.blade.php
<x-layout title="Séries">
<a href="{{route('series.create')}}" class="btn btn-dark mb-2">Adicionar</a>
<ul class="list-group">
@foreach ($series as $serie)
<li class="list-group-item d-flex justify-content-between align-items-center">
{{ $serie->nome }}
<!-- o erro esta nesta linha abaixo -->
<form action="{{ route('series.destroy', $serie->id) }}" method="POST">
<button class="btn btn-danger btn-sm">x</button>
</form>
</li>
@endforeach
</ul>
</x-layout>
SeriesController.php
<?php
namespace App\Http\Controllers;
use App\Models\Serie;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
class SeriesController extends Controller
{
public function index()
{
$series = Serie::query()->orderBy('nome')->get();
return view('series.index')->with('series', $series);
}
public function create()
{
return view('series.create');
}
public function store(Request $request)
{
Serie::create($request->all());
return to_route('series.index');
}
public function destroy(Request $request)
{
dd($request->serie);
}
}
Uma boa alma pode me ajudar? Esta eu estou perdido e não acho saida. Obrigado desde já.