sqlalchemy遇到了一个坑:
我的代码中有一个
item.forever_delete()
其中为了尝试db.session.close()进行手动处理,结果在这里出错了!
sqlalchemy.orm.exc.DetachedInstanceError: Instance <Shopes at 0x211ee146278> is not bound to a Session; attribute refresh operation cannot proceed (Background on this error
百度了一圈,出现以上错误的原因是因为:session 已经被提交,而且是自动进行提交处理的,那么session就已经关闭了,所以再去手动操作这个session关闭,就会提示这个错误!
导致操作的 model 对象已经不在当前 session 中了。
解决的办法,没有唯一的方法,就肯定是自己写的代码中,有逻辑错误!
要一圈圈的进行搜查,查找问题所在才找到这个问题!