概述
我想在Django启动时初始化一些变量(来自数据库).
我能够从数据库中获取数据,但问题是如何调用initialize方法.这应该只调用一次.
尝试查看其他页面,但无法找到答案.
代码目前看起来像这样::
def get_latest_dbx(request,….):
#get数据库中的数据
def get_latest_x(request):
get_latest_dbx(请求中,x,……)
def启动(请求):
get_latest_x(请求)
更新:
由于OP已经更新了问题,似乎中间件方式可能更好,因为他实际上需要启动时的请求对象.所有启动代码都可以放在自定义中间件的process_request方法中,其中请求对象在第一个参数中可用.在执行这些启动代码之后,可以设置一些标志以避免以后重新运行它们(提高MiddlewareNotUsed异常仅适用于__init__,它不接收请求参数).
BTW,OP的要求看起来有点奇怪.一方面,他需要在Django启动时初始化一些变量,另一方面,他需要初始化中的请求对象.但是当Django启动时,可能根本没有传入请求.即使有一个,也没有多大意义.我想他实际需要的可能是为每个会话或用户做一些初始化.
总结
以上是编程之家为你收集整理的python – Django:当django启动时只调用一次方法全部内容,希望文章能够帮你解决python – Django:当django启动时只调用一次方法所遇到的程序开发问题。
如果您也喜欢它,动动您的小指点个赞吧