Löschen Sie einen Datensatz eines Modells in Django
Django ist ein vielseitiges Framework, mit dem wir sehr schnell Full-Stack-Anwendungen erstellen können. Django handhabt die meisten der komplexen und Kernaufgaben, die mit allen Webanwendungen verbunden sind, effizient, sodass Entwickler sie nicht von Grund auf neu schreiben müssen.
Glücklicherweise behandelt Django Datenbanken wie ein Zauber und macht es wirklich einfach, mit ihnen zu interagieren. Obwohl rohe SQL-Abfragen in Django geschrieben werden können, können wir mit Python mit der Datenbank und den Tabellen interagieren – wir können CRUD-Operationen über Datenbanken mit Python sehr schnell effizient ausführen.
In diesem Artikel stellen wir die Funktion der CRUD-Operation delete vor und zeigen, wie Sie einen Datensatz eines Modells in Django löschen können.
Löschen Sie einen Datensatz eines Modells mit der Methode delete()
in Django
Alle Modellobjekte oder Instanzen in Django verfügen über eine Methode delete()
, mit der dieser Datensatz gelöscht werden kann. Nun kann diese Methode delete()
auch verwendet werden, um einen einzelnen Datensatz und mehrere davon zu löschen.
Um einen einzelnen Datensatz zu löschen, verwenden wir den folgenden Code:
record = ModelName.objects.get(id=25)
record.delete()
Die Methode get()
holt den Datensatz mit der id
als 25 und löscht ihn dann. Wenn der Datensatz jedoch nicht gefunden wird, wird eine Ausnahme ausgelöst. Um dies zu vermeiden, können wir einen try...except
-Block wie folgt verwenden:
try:
record = ModelName.objects.get(id=25)
record.delete()
print("Record deleted successfully!")
except:
print("Record doesn't exists")
Wenn wir alle Datensätze löschen müssen, können wir diese Funktion delete()
für ein QuerySet
aufrufen, das alle Datensätze enthält. Der folgende Code führt die gleiche Operation aus:
records = ModelName.objects.all()
records.delete()
Wie oben erwähnt, können wir diese Funktion delete()
auf einem QuerySet
aufrufen; das bedeutet, dass wir diese Funktion auch bei einem QuerySet
einiger gefilterter Datensätze aufrufen können. Beziehen Sie sich auf den folgenden Code für die gleiche Ausgabe:
records = ModelName.objects.filter(firstName="Vaibhav")
records.delete()