我需要在应用程序启动(runserver)上创建一个类实例(假设后端请求会话),并且我不想在运行其他管理命令后重写此会话。我怎样才能实现这个目标?我尝试了几种方法,但我不确定为什么这样的方法不起作用。
# app/apps.py
class MyConfig(AppConfig):
....
requests_session = None
....
def ready(self):
if MyConfig.requests_session is None:
MyConfig.requests_session = requests.Session()
Run Code Online (Sandbox Code Playgroud)
不幸的是,总是满足条件并重新创建会话。不过,文档中推荐使用这种方法。
对我来说,其他解决方案是仅在使用选定的管理命令子集后运行 MyConfig.ready(),这可能吗?
有没有完全不同的更好的方法来存储请求会话?
TIA