【问题标题】:Override settings.py for testing覆盖 settings.py 进行测试
【发布时间】:2017-05-03 20:12:09
【问题描述】:

我在 settings.py 文件中有我的项目设置。那里定义了数据库名称、用户名、主机名等。在项目文件中,我执行import settings,然后在需要的地方使用常量,例如settings.HOST。对于单元测试,我想使用不同的设置。我应该如何覆盖设置?我没有使用 django。

【问题讨论】:

    标签: python testing settings


    【解决方案1】:

    您可以创建一个新文件 - 比如local_settings.py,您可以在其中覆盖特定设置以进行调试和测试。

    然后你在settings.py的末尾添加这个块

    # Override these settings with local settings if such a file exists 
    try:
         from local_settings import * 
    except ImportError as e:
         pass
    

    您应该将local_settings.py 添加到您的.gitignore 文件中以将该文件排除在版本控制之外(如果您使用的是git)。

    顺便说一句,这是 Django 执行此操作的标准方式。

    【讨论】:

      【解决方案2】:

      我想最简单的方法是将您的 settings.py 移动到另一个文件夹进行保管,然后创建一个新文件夹,然后对其进行编辑以进行调试。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-07-26
        • 2019-05-11
        • 2011-08-09
        • 2017-10-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多