Google App Engine
Transaktsioonid käivitatakse funktsiooniga db.run_in_transaction(func, [pos[, kwds]]) kus func
tähistab transaktsiooni sisaldavat funktsiooni, pos funktsioonile edastatav positsiooniargument
(näiteks võti kindla elemendi juurde, millega transaktsioon tehakse) ning kwds täiendavad
võtmesõna argumente, mida saab kasutada transaktsiooni teostamiseks.
def uuenda_kasutajat(key, nimi):
kasutaja = Kasutaja.get(key)
kasutaja.nimi = nimi
kasutaja.put()
class UuendaHandler(webapp.RequestHandler):
def get(self):
key = self.request.get('key')
nimi = self.request.get('nimi')
db.run_in_transaction(uuenda_kasutajat, key, nimi)
Juhul kui transaktsioon ebaõnnestub, proovitakse seda kolm korda veel algusest peale käivitada.
Kui siis ikka ei õnnestu, tõstetakse TransactionFailedError veateade.
Transaktsioonide kohta saab lähemalt lugeda Google App Engine transaktsioonide
dokumentatsioonist.
GAE spetsiifilised teegid