Quando mudo de Adicionar para Adicionar no index.blade.php
dá o erro Route [series.create] not defined.
estou deixando o /series/criar pra prosseguir com a aula
Herlon, você pode compartilhar o código pra eu dar uma olhada?
com erro, está sem o x-layout aqui mas tem no código e tirei o < tbm pra poder ir
...código aqui
`
a href="{{ route('series.create') }}" class="btn btn-dark mb-2">Adicionar
<ul class="list-group">
@foreach ($series as $serie)
<li class="list-group-item">{{ $serie->nome }}</li>
@endforeach
</ul>
...
...código abaixo, sem o erro, mas é pq já estou na etapa posterior, mas mesmo antes deu erro
```<x-layout tittle="Séries">
<a href="/series/criar" class="btn btn-primary 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 }}
<form action="/serie/lista/destroy/$serie->idSerie" method="post">
@csrf
<button class="btn btn-danger btn-sm"
X
</button>
</form>
</li>
@endforeach
</ul>
</x-layout>
....
...código aqui
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\SeriesController;
Route::get('/', function () {
return redirect('/series/lista');
});
Route::resource('/series/lista', SeriesController::class)->only(['index', 'create', 'store']);
Route::post('/series/destroy/{idSerie}', [SeriesController::class, 'destroy'])->name('series.destroy');
e na create.blade não dá o erro, sendo que coloquei o {{ route('series.store') }}
<x-layout tittle="Nova Série">
<form action="{{ route('series.store') }}" method="post">
@csrf
<div class="mb-3">
<label for="nome">Nome:</label>
<input type="text" id="nome" name="nome" class="form-control">
</div>
<button type="submit" class="btn btn-primary">Adicionar</button>
<a href="/series/lista" class="btn btn-light" >Cancelar</a>
</form>
</x-layout>
...
...código controller
namespace App\Http\Controllers;
use App\Models\Serie;
use Illuminate\Support\Facades\DB;
use Illuminate\Http\Request;
class SeriesController extends Controller
{
public function index() {
$series = Serie::query()->orderBy('nome')->get();
return view('series.index')->with('series', $series);
}
public function show() {
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->idSerie);
Serie::find($id)->delete();
return to_route('series.index');
}
}
....
Herlon, você não colocou seu código entre crases, então ele foi interpretado aqui como HTML, o que me dificulta pra analisar. Mas uma coisa que notei é que você definiu a rota com Route::resource('/series/lista'
ao invés de Route::resource('/series'
.
Se você executar php artisan route:list
vai ver todas as rotas definidas e entender o motivo de series.create
não estar lá.
Eu não sei o que seria crase, só conheço a do português rsrs> Tentei de novo colocando entre aspas mas vai como código algumas partes. Poderia me explicar como seria a forma correta para enviar o código? não achei nada no google.
Sim, é a crase do português mesmo. rsrsrs
Basta colocar o código entre 3 crases (`) que o código fica assim:
exemplo
Consegui kkkkkkkkkkkk olha eu fiz no post anterior pra não ficar repetitivo e meus comentários eu deixo pra consolidar o meu conhecimento
Quase foi. rsrsrs Precisa de uma quebra de linha. Fica tipo:
```
Código aqui
```
Mas fora esses detalhes, conseguiu resolver o problema no código com minha resposta inicial? :-)
já consegui resolver, grato