Partilhar campos entre os formulários de criação e edição em Laravel

Esta é simples.

Nas tuas aplicações, é provável que tenhas recursos que são criados e editados com formulários. Os formulários de criação e edição são basicamente os mesmos (com os campos a serem exactamente iguais), mas funcionam de uma maneira ligeiramente diferente.

Na vista de criação começas com um formulário vazio, enquanto que na vista de edição começas com o formulário preenchido com os dados actuais. Mas, em ambas as vistas, queres o conteúdo introduzido anteriormente, no caso de a validação falhar e sere redireccionado para o formulário.

Portanto, se quiseres escrever os campos apenas uma vez e depois incluí-los em ambas as vistas, essa é uma maneira relativamente limpa de o fazer:

Se o campo indicado no primeiro parâmetro não estiver definido, a função auxiliar old () devolve  null ou o valor passado como o segundo parâmetro. Usando uma expressão com o null coalescing operator como segundo parâmetro dá-nos a capacidade de continuar a devolver null se nenhum dos valores anteriores estiver definido.

Isto funciona como esperado em ambas as vistas. Na vista de criação, o $user->email não estaria definido e null seria devolvido (e o campo ficaria vazio), na vista de edição $user->e-mail estaria definido e seria devolvido. Excepto se existir conteúdo submetido e que falhou na validação, nesse caso esse conteúdo é devolvido (em ambas as vistas).

Também pode ser escrito desta maneira, com o mesmo resultado:

Zé Cipriano
Web developer independente (PHP, Laravel).

Deixar uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *