Een databasetransactie groepeert meerdere operaties zodat ze allemaal slagen of allemaal mislukken samen (atomiciteit) — waardoor gedeeltelijke, inconsistente updates worden voorkomen. Django biedt transaction.atomic om operaties in een transactie in te pakken, waardoor gegevensintegriteit voor multi-stap operaties wordt gewaarborgd.
Het probleem dat transacties oplossen
():
from_account.balance -= amount
from_account.save()
to_account.balance += amount
to_account.save()
