Ich möchte einen bestimmten Datensatz löschen. Wie zum Beispiel
delete from table_name where id = 1;
Wie kann ich dies in einem Django-Modell tun?
Ich möchte einen bestimmten Datensatz löschen. Wie zum Beispiel
delete from table_name where id = 1;
Wie kann ich dies in einem Django-Modell tun?
MyModel.objects.get(pk=1).delete()
wird eine Ausnahme ausgelöst, wenn das Objekt mit dem angegebenen Primärschlüssel nicht vorhanden ist, da zunächst versucht wird, das angegebene Objekt abzurufen.
MyModel.objects.filter(pk=1).delete()
dies wird keine Ausnahme auslösen, wenn das Objekt mit dem angegebenen Primärschlüssel nicht existiert und die Abfrage direkt erstellt wird
DELETE FROM my_models where id=1
Erweiterung der meistgewählten Antwort um wolph
Beachten Sie, dass Sie die Anfrage als Parameter an Ihre Löschfunktion in Ihren Ansichten übergeben sollten. Ein Beispiel wäre wie folgt:
from django.shortcuts import redirect
def delete(request, id):
YourModelName.objects.filter(id=id).delete()
return redirect('url_name')
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.
13 Stimmen
Ich stimme @Freedom_Ben zu, aber für künftige Leser, die das f*-Handbuch sowieso mögen, ist das genau das Richtige: docs.djangoproject.com/de/dev/topics/db/queries/