在Django项目中查找和读取特定的.env文件时出错

时间:2019-02-16 15:24:06

标签: django python-3.x environment-variables

在我的项目中,我刚刚添加了新的安全性方法,将.env与项目分离到另一个文件夹中,并采用了新的流程。为此,我遵循了在我的应用中使用的 python-dotenv lib文档

但是即使按照建议,我也找不到所有参数,因为我最终遇到以下错误:

django.core.exceptions.ImproperlyConfigured: The SECRET_KEY setting must not be empty

我的设置:

from dotenv import load_dotenv
env_path = Path('/home/user/configs') / '.env'
load_dotenv(dotenv_path=str(env_path))

如何从特定路径解决此问题?

注意:我在项目中使用python 3.4.5和django 1.9.4,但我不认为问题是由项目中采用的旧版本引起的。

另一个重要的细节是 .env 文件是正确的,因为当我在找到文件 设置的同一文件夹中使用它时, .py ,它可以正常工作!

2 个答案:

答案 0 :(得分:0)

我也在使用这种方法,在过去的几个月中,我一直在跟踪一个非常优秀的开发人员,他还撰写了有关python依赖项“ python-decouple”的文章,您将在此{{3 }} 我认为这肯定会解决您的问题。

Python解耦github存储库:link

答案 1 :(得分:0)

您可以将包含.env的文件夹添加到路径。这是我的操作方式:

load_dotenv(os.path.join(BASE_DIR, "project", ".env"))

已将其here解答。