Ich möchte einen Tisch mit Django aktualisieren - so etwas wie dies in raw SQL:Wie man mit Django 'bulk update'?
update tbl_name set name = 'foo' where name = 'bar'
Mein erstes Ergebnis ist das so etwas wie - aber das ist böse, es ist nicht wahr?
list = ModelClass.objects.filter(name = 'bar')
for obj in list:
obj.name = 'foo'
obj.save()
Gibt es einen eleganteren Weg?
Möglicherweise suchen Sie nach Batch-Einsatz. Werfen Sie einen Blick auf http://stackoverflow.com/questions/4294088/accelerate-bulk-insert-using-djangos-orm – Pramod
Ich mag es nicht, neue Daten einzufügen - nur bestehende aktualisieren. – Thomas
Vielleicht mit Hilfe von select_for_update? https://docs.djangoproject.com/de/dev/ref/models/querysets/#django.db.models.query.QuerySet.select_for_update –