跳转到主要内容

基于入口点扩展Django配置的解决方案。

项目描述

django-extraconfig

使用 django-extraconfig,可以轻松扩展Django项目的 settings.py 文件。此模块提供的唯一功能是 load_extraconfig(entry_point_name, module_name)

extraconfig.load(entry_point_name, module_name)

将入口点模块中的所有大写值加载到名为 module_name 的模块中,覆盖任何现有值。

用法

在您的 settings.py 文件底部添加

try:
    import extraconfig
except ImportError:
    pass
else:
    extraconfig.load(<entry_point_name>, __name__)

entry_point_name 可以是任何字符串值,但为了防止名称冲突,建议包含项目名称。例如,要加载下面的额外配置,entry_point_name 应设置为 “my_project.extraconfig”

创建一个额外配置

创建一个额外配置模块非常简单。最小项目布局由两个文件组成:setup.py 和模块文件。模块将像任何其他常规Python模块一样使用 setup.py 文件进行安装。为了让 django-extraconfig 知道该模块应用于覆盖您的Django配置,您必须在入口点配置中添加它。

一个最小的 setup.py 文件可以看起来像这样

from setuptools import setup

setup(
    name='my_extra_config',
    version='0.1',
    py_modules=['my_extra_config'],
    entry_points = {
        'my_project.extraconfig': 'main = my_extra_config'
    }
)

现在您可以在项目中添加一个 my_extra_config.py 文件,其中包含您想要覆盖的设置

DEBUG = True

安装额外配置

一旦额外配置项目准备就绪,您可以运行

python setup.py develop

这将以开发模式安装额外配置模块,这意味着您可以编辑额外设置,而无需重新安装即可看到所有更改。

项目详情


下载文件

下载您平台对应的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源代码分发

django-extraconfig-0.1.1.tar.gz (2.1 kB 查看哈希值)

上传时间 源代码

支持者

AWSAWS云计算和安全赞助商DatadogDatadog监控FastlyFastlyCDNGoogleGoogle下载分析MicrosoftMicrosoftPSF赞助商PingdomPingdom监控SentrySentry错误日志StatusPageStatusPage状态页面