flask sqlalchemy刪數據報錯Object '' is already attached to session '1' (this is '3')

sqlalchemy.exc.InvalidRequestError

sqlalchemy.exc.InvalidRequestError: Object '<Mydata at 0x720d710>' is already attached to session '1' (this is '3')


結論:

兩個不同的db交叉混用導致問題,根據報錯也可看出,要操作的對象已經隸屬於會話1,
 而現在這個請求已經是會話2了。

原因:

之前我在自己負責的模塊中設置了一個個人使用的db,用於自己模塊的運行和測試;
 後來leader在服務器代碼的根下面建立了一個新的db,然後修改了我部分代碼,使它們使用新的db;
 然後我自己調試自己代碼時,就報了上述錯誤;
 原因是我有部分代碼還是使用原先的db,與新的db會話發生衝突;

解決方案:

1、一旦視圖函數內涉及db.session的操縱,在函數內進行 from models import db即正常。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章