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

Como seria se fosse cliente ativo ou inativo o DELETE?

Uma dúvida aqui, é como seria se fosse um banco de dados que os clientes excluídos fosse tratado por uma coluna "Ativo" => True = Ativo , False = Inativo

Ao excluir o cliente, ele fica inativo no banco de dados e não é mais listado, até que alguém restaure ele....

Bom, usaria o metodo PUT para atualizar o campo booleano, seria correto ou tem outra alternativa? como ficaria no metodo?

2 respostas
solução!

Olá, Bruno.

Da forma mais simples, eu continuaria utilizando o verbo DELETE pois para o cliente, este registro está sendo deletado.

Quanto ao campo no banco de dados, é muito comum salvar a data de quando este registro foi "deletado", ao invés de um campo booleano.

Caso você queira conhecer mais ferramentas para trabalhar com esse cenário, existem as Doctrine Extensions. São pacotes que fazem com que o funcionamento do Doctrine seja modificado de alguma forma. Existe a extensão SoftDeleteable. Com ela, ao remover uma entidade com EntityManagerInterface::remove, automaticamente será atualizado o registro informando que ele deve ser considerado como excluído, mas sem realmente removê-lo do banco.

Para integrar as Doctrine Extensions com symfony existe esse plugin bem legal: StofDoctrineExtensionsBundle. Este plugin faz com que o pacote Doctrine Extension já fique configurado no seu projeto, então basta utilizar a anotação @Gedmo\SoftDeleteable para que este comportamento seja adotado.

Para entender mais detalhes, dá uma olhada nesse plugin que mandei e na documentação dessa Doctrine Extension.

Forte abraço e bons estudos.

E aí, Bruno?

Entendeu? Ficou alguma outra dúvida?