我們將我們的一個主要django站點從1.4升級到1.9。我想要pull a github並使用laboratory來針對現有生產站點測試升級的站點。但是,由於顯而易見的原因,我無法將新站點寫入(postgres)生產數據庫。使用中間件回滾所有Django數據庫交易
現在,我可能會給這隻讀實例只讀數據庫的權限只是爲了確保,但我不能讓它在每次寫入時出錯。似乎我應該能夠設置有問題的數據庫連接使用ATOMIC_REQUESTS = True
,然後編寫中間件在每個請求結束時回滾事務,但是自從1.4以來,在Django的事務處理中發生了很多變化相當確定實現該中間件的最佳方式。
我該如何編寫中間件來可靠地回滾每個事務,不管是什麼?
輝煌。我會試一試。但有一個問題:如果我沒有回滾事務並且沒有提交它們,我現在是否需要擔心它們堆積如此,Django也具有持久連接? –
那個我真的不知道,但爲了測試的目的,因爲你沒有做成千上萬的交易,我不認爲這很重要。順便說一句,你不必手動回滾。 – e4c5
我還沒有得到它 - 其他優先事項出現了。 :)一旦我嘗試過,我會再回來看看。在這一點可能需要幾個星期。 –