diff options
| author | Tim Graham <timograham@gmail.com> | 2012-11-06 08:53:10 -0500 |
|---|---|---|
| committer | Tim Graham <timograham@gmail.com> | 2012-11-06 17:47:10 -0500 |
| commit | 620e0bba4969f27230d35f75bc6a1624c3fac747 (patch) | |
| tree | 6c26162e38ff99f3e03df3078f4eeefd661a5b82 | |
| parent | 79dd751b0b9e428bf386d7304f442fa9815fdbba (diff) | |
Fixed #19154 - Noted commit_manually requires commit/rollback for reads
Thanks als for the report.
| -rw-r--r-- | docs/topics/db/transactions.txt | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/docs/topics/db/transactions.txt b/docs/topics/db/transactions.txt index 4a52c5af35..3c0ec4f187 100644 --- a/docs/topics/db/transactions.txt +++ b/docs/topics/db/transactions.txt @@ -161,8 +161,12 @@ managers, too. transactions. It tells Django you'll be managing the transaction on your own. - If your view changes data and doesn't ``commit()`` or ``rollback()``, - Django will raise a ``TransactionManagementError`` exception. + Whether you are writing or simply reading from the database, you must + ``commit()`` or ``rollback()`` explicitly or Django will raise a + :exc:`TransactionManagementError` exception. This is required when reading + from the database because ``SELECT`` statements may call functions which + modify tables, and thus it is impossible to know if any data has been + modified. Manual transaction management looks like this:: |
