在我的Python-Django Web应用程序中,有时数据库会断开连接(与我的测试环境有关的问题,不是那么稳定...),而我的Web应用程序却给我这个错误:
Traceback (most recent call last):
File "main.py", line 33, in <module>
class beta_Tester(Employee, Developer):
TypeError: Cannot create a consistent method resolution
order (MRO) for bases Employee, Developer
现在,我如何告诉django重试打开连接并继续? django似乎仍然停留在这一点...
谢谢。
答案 0 :(得分:0)
没有办法告诉Django应该在连接错误时重试。相反,它旨在仅在该请求上失败。来自the documentation:
如果在处理请求时发生任何数据库错误,则Django将检查连接是否仍然有效,如果没有,则将其关闭。因此,数据库错误最多影响一个请求。如果连接变得不可用,则下一个请求将获得新的连接。
但是,如果您遵循文档中的以下建议,这应该不是问题:
如果您的数据库在一段时间后终止了空闲连接,则应将
CONN_MAX_AGE
设置为较低的值,以便Django不会尝试使用已被数据库服务器终止的连接。