Metodo destroy com update
Boa tarde Carlos.
Na minha rotina de deleetar eu, na verdade, não quero deletar o registro. Quero somente mudar o status de ativo para inativo então no método destroy preciso fazer um updtae mas parece que tem algo erado na minha rotina. TEntei fazer o updte somente do campo ativo e não deu. Parece que espra um array.
Olá, Marcos!
Tudo bem?
Por que não usa o recurso nativo do Laravel, chamado SoftDelete?
https://blog.especializati.com.br/aprenda-como-utilizar-o-recurso-de-soft-deleting-do-laravel/
Se quer alterar apenas o status (se fizer mais sentido para o seu sistema), deve ter uma implementação que altere o status, e não usar o delete.
-----
Para atualizar, o método update espera um array:
$local->update([
'ativo' => 'I'
]);
HUmmm, valeu. Conhecia isso não.
Obrigado
Bom dia Carlos.
Achei muito legal osoftdelete e quero mesmo usar os recursos corretos do laravel mas não entendi como gravo a data na coluna softdelete.
Fiz isso
E no método delete do controller só faço o update no campo deleted_at?to é automático? O resto é automático?
Sim, é automático.
Quando faz isso:
$post = Post::find(1);
$post->delete();
Por default vai preencher a coluna deleted_at com o timestamps (data + hora)
E por default o model só busca os registros cujo o valor da coluna deleted_at seja igual a null.
Precisa estar logado para conseguir responder a este ticket!
Clique Aqui Para Entrar!