停止随机 "Parent instance is not bound to a Session"

Stop random "Parent instance is not bound to a Session"

我知道这里已经回答了类似的问题,但问题是:

我有一些单元测试,它们有时 运行 没问题,但有时我得到一个 "Parent instance is not bound to a Session"

那么,如果它只是随机发生,我将如何开始调试类似的东西。

哦,错误之前的调用是db.session.add(my_item)

这种情况多久发生一次?作为起点,可能会在抛出异常的行上放置您最喜欢的 Python 调试器 (pdb) 的断点。然后,当您遇到错误时,您将在 Python 调试器中检查应用程序状态,进入堆栈帧并弄清楚您的应用程序是如何以这种状态结束的。

还广泛使用 Python 记录器并写出 DEBUG 日志级别消息通常有助于查明错误的实际原因。