2014-10-07 42 views
-2

我正在構建一個需要事務支持的網站,以便數據庫記錄修改將作爲一個單元成功或失敗。我非常喜歡Django/Python提供的對象關係映射。他們是否還提供了一個交易設施,如果單元中的後續數據庫修改失敗,它會自動「回滾」以前的模型插入?Python/Django中的事務性支持

+0

你能提供你正在使用Django的版本看看atomic 裝飾/ ctxt經理或django.db.transaction模塊? – srj 2014-10-07 05:38:55

回答

0

簡短的回答,是的。 Django有許多API來控制運行查詢時事務的發生。

很長的答案,django中的事務管理API在不同的版本上有很大的改變。請檢查您正在使用的django版本的文檔。

我會給你留下一些提示。 from database transactions in django

默認行爲是django運行事務中的每個查詢。查詢在執行後立即提交。

如果您需要一堆ORM查詢作爲單元通過或失敗,那麼django提供了用於事務管理的修飾器/上下文管理器。

特別是,如果你正在使用Django < 1.6