guillotina.transactions
¶
-
guillotina.transactions.
commit
(request=None, warn=True)¶ Commit the current active transaction.
Parameters: request – request object transaction is connected to
-
guillotina.transactions.
abort
(request=None)¶ Abort the current active transaction.
Parameters: request – request object transaction is connected to
-
guillotina.transactions.
get_tm
(request=None)¶ Return shared transaction manager (from request)
This is used together with “with” syntax for wrapping mutating code into a request owned transaction.
Parameters: request – request owning the transaction Example:
with get_tm(request).transaction() as txn: # begin transaction txn # do something # transaction txn commits or raises ConflictError
-
guillotina.transactions.
get_transaction
(request=None)¶ Return the current active transaction.
Parameters: request – request object transaction is connected to
-
class
guillotina.transactions.
managed_transaction
(request=None, tm=None, write=False, abort_when_done=False, adopt_parent_txn=False, execute_futures=True)¶ Execute a transaction as async context manager and automatically close connection after done.
>>> async with managed_transaction() as txn: >>> pass
Parameters: - request – request object to connect transaction with
- tm – transaction manager to retrieve transaction from
- write – Does this write to database? (defaults to false)
- abort_when_done – Abort transaction when done (defaults to false)
- adopt_parent_txn – If this is a sub-transaction, use parent’s registered objects
- execute_futures – Execute registered futures with transaction after done (defaults to true)