Solucionado (ver solução)
Solucionado
(ver solução)
8
respostas

erro no {{ route('series.create') }}

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

8 respostas

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>

....

Insira aqui a descrição dessa imagem para ajudar na acessibilidade...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? :-)

solução!

já consegui resolver, grato

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software