Re: [問題]Django Transaction error
大家好:
回頭來分享,這個issue的解決辦法。
在StackOverFlow,有找到一篇關於這個issue的解法以及說明:
http://ppt.cc/sX6l
只是這個問題的發生,還是個謎(太嫩了),根據同事轉述,他也在Trasaction中除錯,
直接關閉程式,不下幾十次,也沒有弄出種錯誤。
為了找出錯誤怎麼發生,我把DB重開,執行後,錯誤一樣發生,cookie清掉,錯誤
一樣發生,那一段跑進去後,就是會發生錯誤(如同上篇所述),追進Traceback,
追到這段
def validate_no_atomic_block(self):
"""
Raise an error if an atomic block is active.
"""
if self.in_atomic_block:
raise TransactionManagementError(
"This is forbidden when an 'atomic' block is active.")
那目前還是照StackOverFlow這篇來解掉這個issue,寫法跟我上篇差不多,
但是把set_auotcommit相關的語法都拿掉,但拿掉後有個隱憂是目前Django預設
autocommit=true,在沒有下autocommit=false,情況下進行transactation,
不知道會不會因為autocommit的關係,造成transaction失效,今天稍微
測了一下是OK的,如果有意外在上來跟各位分享。
也謝謝uranusjr的指教~
再貼一篇Transaction官方文章,給遇到相同問題的鄉民參考
http://ppt.cc/bW7Y
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 122.118.57.225
※ 文章網址: http://www.ptt.cc/bbs/Python/M.1416581329.A.6EC.html
※ 編輯: MacPerson (122.118.57.225), 11/21/2014 22:51:19
※ 編輯: MacPerson (122.118.57.225), 11/21/2014 22:51:57
→
11/21 22:59, , 1F
11/21 22:59, 1F
→
11/21 22:59, , 2F
11/21 22:59, 2F
→
11/21 23:00, , 3F
11/21 23:00, 3F
※ 編輯: MacPerson (122.118.57.225), 11/21/2014 23:36:20
討論串 (同標題文章)
完整討論串 (本文為第 2 之 2 篇):
Python 近期熱門文章
PTT數位生活區 即時熱門文章