Skip to main content
 首页 » 编程设计

python之在django中设置一个全局变量

2025年05月04日38shihaiming

我正在使用 elasticsearch 并且需要建立一个持久连接到它,我在我的项目的任何地方重新使用它。然而,经过大量挖掘,我仍然不确定如何正确创建一个全局变量,我可以肯定它只会被实例化一次。我创建了以下文件:

es.py

from elasticsearch import Elasticsearch 
es = Elasticsearch() 

我在任务和 View 等地方使用它如下:

import es 
es.es.search(***********) 

但对我来说,这似乎只是每次调用 es = Elasticsearch(),导致重新创建连接。我的方法正确吗?

请您参考如下方法:

无论模块和变量名的选择如何(es.es 看起来很别扭),你所做的似乎没问题。

Elasticsearch() 只会被调用一次,无论您在其余代码中导入该模块多少次。

我认为如果连接丢失,您会希望通过某种方式重新连接,但那是另一回事。