【问题标题】:How can I turn off the debug mode in oTree?如何关闭 oTree 中的调试模式?
【发布时间】:2016-01-20 20:00:00
【问题描述】:

我正在尝试以生产模式(debug = false)从 Otree(基于 django 和 Python 的 Web 平台)运行 Web 应用程序。我找不到变量 OTREE_PRODUCTION 的位置。

【问题讨论】:

    标签: django debugging otree


    【解决方案1】:

    OTREE_PRODUCTION 变量是一个系统环境变量,这意味着它的范围大于您的 Otree 项目。因此,设置起来更加复杂。下面是如何在 Mac 或其他 UNIX 系统上执行此操作的说明。

    您可以按照前面的答案建议反转条件,但如果您真的想进行实验并将其放在像 Heroku 这样的远程服务器上,这是不可取的。那是因为您可能需要实际调试,并且您不想为了做到这一点而必须重新启动(在远程服务器上编译)。如果正确使用环境变量,就可以避免这个问题。

    以下步骤适用于任何与 Otree 相关的环境变量,例如 AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEYOTREE_AUTH_LEVELOTREE_ADMIN_PASSWORD

    在 Mac 上本地设置 OTREE_PRODUCTION:

    您需要做的就是修改.bash_profile 文件。这告诉您的终端有关如何在其中运行的一般信息。它位于您的主目录中并且被隐藏,因此名称中的前导句点。使用您选择的文本编辑器打开文件。

    vim ~/.bash_profile
    

    ~/ 指定文件位于您的主目录中。在该文件中,您将看到如下所示的其他行,指定调用它时要运行的 python 版本。不要改变这些。

    # Setting PATH for Python 2.7
    # The orginal version is saved in .bash_profile.pysave
    PATH="/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}"
    export PATH
    

    您需要做的就是添加下面的两行并保存文件。

    OTREE_PRODUCTION=1
    export OTREE_PRODUCTION
    

    第一行将变量设置为 True,第二行将这个变量和值广播给任何可能使用它的东西。更详细的answer is here

    要真正广播出这些值,需要重新启动 shell。你可以通过运行source ~/.bash_profile来做到这一点

    现在您可以通过运行以下命令来检查变量的值。

    echo $OTREE_PRODUCTION
    

    $ 表示要“回显”的东西是一个变量。没有它,它只会返回相同的文本。

    在 Heroku 上设置 OTREE_PRODUCTION=1:

    您甚至可能不需要或不想在本地执行此操作,因为您可以告诉 Heroku 在生产模式下运行,而本地版本保持调试状态。假设您是all set up on Heroku,您可以运行以下命令。通过这一行,您可以在生产服务器上的调试 (OTREE_PRODUCTION=0) 和生产 (OTREE_PRODUCTION=1) 之间来回切换。

    heroku config:set OTREE_PRODUCTION=1
    

    然后您可以使用

    查看所有环境变量
    heroku config
    

    【讨论】:

      【解决方案2】:

      有一种方法,不记得了,但是您可以反转条件: 在 settings.py 中: 转:

      如果 environ.get('OTREE_PRODUCTION') 不在 {None, '', '0'} 中: 调试 = 假 别的: 调试 = 真

      到:

      如果 environ.get('OTREE_PRODUCTION') 不在 {None, '', '0'} 中: 调试 = 真 别的: 调试 = 假

      【讨论】:

        猜你喜欢
        • 2020-06-28
        • 1970-01-01
        • 1970-01-01
        • 2013-11-12
        • 2012-09-12
        • 2015-03-18
        • 2012-06-02
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多