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

Verificar entrada de dados antes do input (laravel PHP) Validation

Preciso de um se para verificar 2 valores do cadastro e 2 do banco, se ambos forem iguais não devera ocorrer o cadastro.

gostaria de fazer pelo validador, alguma dica ?

meu controller

Aprovadores::create(Request::all());

return redirect() ->action('AprovadoresController@novo');

3 respostas
public function adiciona(Request $request)
    {
        $cadastro_idcadastro = $request->Cadastro_idCadastro;
        $users_id = $request->users_id;

        $request->validate([
            'cadastro_idCadastro' => [
                'required',
                Rule::unique('aprovadores')->where(function ($query)
                use ($cadastro_idcadastro, $users_id)
                {
                      return $query->where('Cadastro_idCadastro', $cadastro_idcadastro)
                                   ->where('users_id', $users_id);
                }),
            ]
        ]);

Oi Gilmar, tudo bom?

Sua implementação parece bem justa com a documentação. Funcionou certinho?

Uma refatoração que seria legal de fazer era isolar essa regra de validação em um metodo de outra classe (algum serviço, por exemplo), assim a gente polui menos a action adiciona e pode reutilizar esse código em outros pontos do nosso sistema se precisar =)

Ainda tem alguma duvida?

Abraço!

solução!

vou usar na Request para fazer a validação.

abs!