Eu quero excluir um registro específico. Tal como
delete from table_name where id = 1;
Como posso fazer isso em um django model
?
python
django
django-models
user426795
fonte
fonte
Respostas:
Existem algumas maneiras:
Para excluí-lo diretamente:
Para excluí-lo de uma instância:
fonte
pre_delete
oupost_delete
.delete()
para verificar o que estava excluindo. Ele retorna uma tupla com a contagem de objetos excluídos e um dicionário com detalhes sobre os tipos excluídos, por exemplo(1, {'yourapp.SomeModel': 1})
.isso gerará uma exceção se o objeto com chave primária especificada não existir, porque primeiro ele tenta recuperar o objeto especificado.
isso não gerará exceção se o objeto com chave primária especificada não existir e produzir diretamente a consulta
fonte
MyModel.object.filter(pk=1).delete()
. Deve ser "objetos".se você deseja excluir uma instância, escreva o código
se você quiser excluir todas as instâncias, escreva o código
fonte
Se você deseja excluir um item
Se você deseja excluir todos os itens da lista de desejos, por exemplo
fonte
Wolph forneceu uma boa resposta para códigos focados. Deixe-me colar o documento oficial aqui, para referência das pessoas.
fonte