Ich möchte einen bestimmten Datensatz löschen. Sowie
delete from table_name where id = 1;
Wie kann ich das in einem machen django model
?
python
django
django-models
user426795
quelle
quelle
Antworten:
Es gibt verschiedene Möglichkeiten:
So löschen Sie es direkt:
So löschen Sie es aus einer Instanz:
quelle
pre_delete
oderpost_delete
verwenden.delete()
können Sie überprüfen, was Sie gelöscht haben. Es gibt ein Tupel mit der Anzahl der gelöschten Objekte und ein Wörterbuch mit Details zu den gelöschten Typen zurück, z(1, {'yourapp.SomeModel': 1})
.Dies löst eine Ausnahme aus, wenn das Objekt mit dem angegebenen Primärschlüssel nicht vorhanden ist, da zunächst versucht wird, das angegebene Objekt abzurufen.
Dies löst keine Ausnahme aus, wenn das Objekt mit dem angegebenen Primärschlüssel nicht vorhanden ist und die Abfrage direkt erzeugt wird
quelle
MyModel.object.filter(pk=1).delete()
. Es sollten "Objekte" sein.Wenn Sie einen Eintrag löschen möchten
Wenn Sie beispielsweise alle Elemente in der Wunschliste löschen möchten
quelle
Wenn Sie eine Instanz löschen möchten, schreiben Sie den Code
Wenn Sie alle Instanzen löschen möchten, schreiben Sie den Code
quelle
Wolph lieferte eine gute Antwort fokussierte Codes. Lassen Sie mich hier nur das offizielle Dokument einfügen , um die Leute darauf zu verweisen.
quelle