Migrando versões anteriores para Laravel 8


Fui migrar um sistema da versão 5.x do Laravel para a versão 8. Nesse processo acabei descobrindo muitas particularidades dele que precisei adaptar, desde Providers a diretórios. Logo resolvi fazer um compilado de todos os problemas que enfrentei para auxiliar outras pessoas nessa tarefa.


Target class controller does not exist

1. Primeiro vá ao arquivo: app > Providers > RouteServiceProvider.php

2. Agora adicione a linha ->namespace(‘App\Http\Controllers’) como a imagem:


Laravel missing required parameters on destroy route

Essa url que eu usava no formulário:

# Laravel < 8
route('usuarios.destroy', ['User' => $value->id])

route('usuarios.edit', ['User' => $value->id]

# Laravel >= 8
['route' => ['usuarios.destroy', $value->id]

route('usuarios.edit', $value->id)

Formulário completo:

{{ Form::open(['route' => ['usuarios.destroy', $value->id],  'method' => 'POST']) }}
    <button type="submit" class="btn btn-primary">
        <span class="glyphicon glyphicon-thumbs-up"></span> Votar
    </button>
{{ Form::close() }}
<a href="{{route('usuarios.view', $value->id)}}">
  View
</a>

Lembrando que para usar Form no Laravel, você precisa instalar a dependência html.


Diretório padrão para a Model

No Laravel 5x por padrão os modelos ficam no diretório app/

No Laravel 8x por padrão os modelos ficam no diretório app/Models/

Moeda Tipo Valor
Dollar Compra R$ 5,97
Dollar Venda R$ 5,97
Data 22/01/2025

January 2025
S M T W T F S
 1234
567891011
12131415161718
19202122232425
262728293031