5
respostas

Validator com unique em update

Estou com um formulário que irá fazer um update nas informações da conta em meu sistema.

Quero aplicar um Validator para que filtre as informações de entrada, para que ao final o informação salva seja valida. Explicado até aqui, vamos a questão. Tenho um campo chamado "url", este campo deve ser unico, porem quando tento realizar o update meu validator que possui "required|unique:conta" não permite pois alega que tal url já existe (não a modificando).

Existe algum parâmetro para que ele permita esse update reconhecendo que é do mesmo registro?

5 respostas

Oi Henrique, aqui na documentação => https://laravel.com/docs/5.4/validation#rule-unique

tem uma seção chamada Forcing "A Unique Rule To Ignore A Given ID:" acho que ela é o que você procura.

Oi Henrique, tudo bom?

Aqui na documentação do laravel, eles mostram uma forma de ignorar certo Id na validação. Algo como:

'url' => 'unique:conta,url,'.$user->id

Assim, ele irá ignorar o usuario com Id. Ou seja, se for um usuario que ja existe no sistema (já possui id) ele passa na validação =)

Qualquer duvida, compartilha com a gente aqui.

Abraço e bons estudos

hmmm, legal!

Mas em meu caso criei um arquivo de requests e coloquei a regra la... acredito que com arquivo separado eu não consiga fazer tal validação, só com a chamada do validator inline, correto?

Oi Henrique, tudo bom?

O que seria um arquivo de requests?

De qualquer forma, você pode chamar o validator inline também, caso necessário =)

Abraço.

php artisan make:request RequestContato

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