Je souhaite supprimer un enregistrement particulier. Tel que
delete from table_name where id = 1;
Comment puis-je faire cela dans un django model
?
python
django
django-models
user426795
la source
la source
Réponses:
Il y a deux façons:
Pour le supprimer directement:
Pour le supprimer d'une instance:
la source
pre_delete
oupost_delete
.delete()
pour vérifier ce que vous supprimiez. Il renvoie un tuple avec le nombre d'objets supprimés et un dictionnaire avec des détails sur les types supprimés, par exemple(1, {'yourapp.SomeModel': 1})
.cela lèvera une exception si l'objet avec la clé primaire spécifiée n'existe pas car au début, il essaie de récupérer l'objet spécifié.
cela ne déclenchera pas d'exception si l'objet avec la clé primaire spécifiée n'existe pas et qu'il produit directement la requête
la source
MyModel.object.filter(pk=1).delete()
. Ce devrait être des "objets".si vous voulez supprimer une instance, écrivez le code
si vous voulez supprimer toutes les instances, écrivez le code
la source
Si vous souhaitez supprimer un élément
Si vous souhaitez supprimer tous les éléments de la liste de souhaits par exemple
la source
Wolph a fourni une bonne réponse des codes focalisés. Permettez-moi de coller le document officiel ici, pour référence.
la source