Wie die Django-Dokumentation sagt, gibt select_for_update
eine Queryset
zurück. Aber get
nicht. Jetzt habe ich eine Abfrage, von der ich sicher bin, dass sie nur ein Tupel zurückgibt. Aber ich muss auch Sperren für diese Transaktion erwerben. Also mache ich etwas wie:Wie benutzt man select_for_update um eine Anfrage in Django zu bekommen?
ob = MyModel.objects.select_for_update().filter(some conditions)
Jetzt muss ich einige Werte von ob. Aber ob ist ein Queryset
. Das scheint ziemlich einfach, aber schlägt mich. Ich bin ziemlich neu in Django. Ein Ratschlag bitte.
Also statt mache ich einen Filter, kann ich 'select_for_update()' direkt auf 'get' machen? –
@IndradhanushGupta Nein, die Reihenfolge ist nicht korrekt. Sie verwenden 'get' on' select_for_update() ', da' get' ein Objekt und kein QuerySet zurückgibt. – minmaxavg