1
resposta

InvalidArgumentException Attribute [controllers] does not exist.

Tive um erro ao tentar abrir a view de autenticação do Laravel.

Inseri essas linhas no arquivo de rotas:

Route::get('home', 'HomeController@index');

Route::controllers([
    'auth' => 'Auth\AuthController',
    'password' => 'Auth\PasswordController',
]);

E quando fui tentar acessar o /home, ele deu o erro:

InvalidArgumentException Attribute [controllers] does not exist.

Notei que a pasta Auth que fica dentro da pasta Controllers não possui um arquivo chamado HomeController, nem o AuthController ou o PasswordController, mas sim os arquivos:

  • ForgotPasswordController
  • LoginController
  • RegisterController
  • ResetPasswordController

Será que o meu Laravel está em uma versão diferente da que está sendo usada no curso?

E independente disso, como eu corrijo esse erro?

1 resposta

Oi Suéllen, tudo bom?

Qual versão do laravel você está utilizando? O curso segue na versão 5.0:

composer create-project laravel/laravel estoque "5.0."

A solução pode variar de versão para versão. Por exemplo, na versão 5.6 há o registro no arquivo routes/web.php a partir de métodos estaticos:

Route::get($uri, $callback);
Route::post($uri, $callback);
Route::put($uri, $callback);
Route::patch($uri, $callback);
Route::delete($uri, $callback);
Route::options($uri, $callback);

Para cada método de requisição HTTP.

Na documentação você encontra todas as formas para todas as versões =)

Qualquer problema é só falar.

Abraço