使用pycharm调试django heroku工头

时间:2012-07-01 19:28:49

标签: django heroku pycharm foreman

我最近转移到Heroku部署Django应用程序。它运行良好,但我使用Pycharm进行调试,最近遇到问题,因为Pycharm不会使用.env文件环境变量进行调试。如何使用foreman调试Django应用程序?

4 个答案:

答案 0 :(得分:4)

不幸的是,还不支持从.env文件加载环境变量。您可以对问题http://youtrack.jetbrains.com/issue/PY-5543进行投票,以获得有关进度的通知。

答案 1 :(得分:1)

您可以从.env文件中读取本地默认环境变量,并在您的环境中进行设置。这已在此处详细记录 - http://www.wellfireinteractive.com/blog/easier-12-factor-django/

答案 2 :(得分:0)

我使用一个代码块解决这个问题,我在调试时手动调用文件顶部的代码块。这是一个相当蹩脚但却很有效的解决方案:

import os


def load_environment():
    env = {}
    with open('.env', 'r') as env_file:
        env_vars = env_file.readlines()
        for v in env_vars:
            v = v.strip().replace('"', '').replace("'", '')
            if v and v[0] != '#':
                v = v.split('=')
                env[v[0]] = v[1]

    os.environ.update(env)

然后从我正在调试的任何应用程序或脚本中调用它,例如:

from debug.environment_loader import load_environment
load_environment()

访问任何环境变量之前。

答案 3 :(得分:0)

正如在support page中链接的Dmitry’s answer所述,现在有一个名为EnvFile的第三方PyCharm插件会在执行前导入.env的内容。< / p>