Problem importing a class in Laravel 5.5

Asked

Viewed 294 times

0

I am trying to include the class that handles the Request of my form, but it always returns error of not found, however, I have already checked and reversed and the file and the patch are correct.

I tried to update the Composer to see if it solved, but without success, follow the code below.

Arguments "Class App Http Requests Cadastrorequest does not exist"

My file Cadastrocontroller.php

<?

    namespace App\Http\Controllers;

    use Illuminate\Support\Facades\DB; // Banco de dados
    use Request; // Tratamento URI
    use Validator; // Validação
    use App\Cadastro; // Modelo
    use App\Http\Requests\CadastroRequest; // Regras do formulário

    class CadastroController extends Controller {

        // Formulário de Cadastro
        public function cadastro(){

            return view('cadastro.formulario');

        }

        // Registrar Usuário
        public function salvar( CadastroRequest $request ){

            Cadastro::create( $request->all() );
            return redirect('/cadastro/obrigado')->withInput();

        }

    }
?>

My file Cadastrorequest.php (root/app/Http/Requests/Cadastrorequest.php)

<?php

    namespace App\Http\Requests;

    use Illuminate\Foundation\Http\FormRequest;

    class CadastroRequest extends FormRequest { 

        public function authorize() {
            return true; // Manter true para teste
        }

        public function rules() {
            return [
                # Informações de contato
                'nome' => 'required|min:10',
                'email' => 'required|min:10',
                'celular' => 'min:11|max:15',
                # Informações de acesso
                'senha' => 'required|numeric|min:3|max:8',
                'rsenha' => 'required|numeric|min:3|max:8',
                # Informações de endereço
                'estado' => 'required|min:10',
                'cidade' => 'required|min:10',
                'cep' => 'required|min:10',
                'endereco' => 'required|min:10',
                'numero' => 'required|min:10',
                'bairro' => 'required|min:10',

            ];
        }

        public function messages(){

            return [
                'nome.required' => 'Você precisa informar seu nome.'
                'email.required' => 'Insira um e-mail valido, você precisa confirmar o registro.'
                'senha.required' => 'Senha é obrigatória.'
                'rsenha.required' => 'Confirmação da senha é obrigatória.'
                'estado.required' => 'Saber seu estado ajuda a lhe informar jogos acontecendo no seu estado.'
                'cidade.required' => 'Saber a cidade que mora ajuda a lhe informar os jogos próximos a você.'
                'cep.required' => 'Campo CEP é obrigatório.'
                'endereco.required' => 'Campo Endereço é obrigatório.'
                'numero.required' => 'Campo Número é obrigatório.'
                'bairro.required' => 'Campo Bairro é obrigatório.'
            ];

        }
    }
  • Have you tried using composer dump-autoload or add backslash before including class \App\... ?

  • Yes friend, I tried to add the backslash before the App and I ran the dump-autoload, update and cache:clear from Artisan, without success

  • I found the problem, actually I found it bizarre! It was a stupid mistake of mine not to have put the comma in the function messages(), as I was duplicating the line I ended up not noticing. The lack of these commas, returned to me that the class had not been found, when in fact, the problem was punctuation and not that the class file did not exist.

No answers

Browser other questions tagged

You are not signed in. Login or sign up in order to post.