1
resposta

The GET method is not supported for this route. Supported methods: POST."

Estou tendo problema ao acessar a pagina de episódios, aparece esse erro:

Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException thrown with message "The GET method is not supported for this route. Supported methods: POST."

Stacktrace:

#27 Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException in C:\Users\rph\Documents\Estudos - Programação - 2020\Php\Projeto Laravel P2 - Alura - A partir da Aula 5\vendor\laravel\framework\src\Illuminate\Routing\RouteCollection.php:256

#26 Illuminate\Routing\RouteCollection:methodNotAllowed in C:\Users\rph\Documents\Estudos - Programação - 2020\Php\Projeto Laravel P2 - Alura - A partir da Aula 5\vendor\laravel\framework\src\Illuminate\Routing\RouteCollection.php:242

#25 Illuminate\Routing\RouteCollection:getRouteForMethods in C:\Users\rph\Documents\Estudos - Programação - 2020\Php\Projeto Laravel P2 - Alura - A partir da Aula 5\vendor\laravel\framework\src\Illuminate\Routing\RouteCollection.php:176

Em web.php : () Route::post('/temporadas/{temporada}/episodios', 'EpisodiosController@index'); ()

Em EpisódiosController: () class EpisodiosController extends Controller { public function index(Temporada $temporada) { $episodios = $temporada->episodios; return view('episodios.index', compact('episodios')); } } ()

em resources/views/temporadas/index.blade () @section('conteudo') <ul class="list-group"> @foreach($temporadas as $temporada) <li class="list-group-item d-flex justify-content-between align-items-center"> <a href="/temporadas/{{$temporada->id}}/episodios"> Temporada {{ $temporada->numero }} </a> <span class="badge badge-secondary"> {{ $temporada->episodios->count() }} </span> </li> @endforeach </ul> @endsection () em resources/views/episodios/index.blade (```) @section('conteudo')

  • @foreach($episodios as $episodio)
  • Episódio {{ $episodio->numero }}
  •     @endforeach
    </ul>
    <button class="btn btn-primary mt-2 mb-2">Salvar</button>
@endsection (```)
1 resposta

Boa noite,

O erro está indicando que você está acessando por GET uma rota definida como POST.

Acredito que o correto é essa rota ser do tipo GET mesmo, então no seu arquivo de rotas troca o post por get na rota /temporadas/{temporada}/episodios e diz se resolve o problema.

Olhando na descrição do curso eu vi que o código de lá está trocado também (com o post no lugar do get), mas já entrei em contato com a equipe para confirmar e corrigir.

Espero ter ajudado, qualquer dúvida é só falar!

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