django-split-settings

Organize Django settings into multiple files and directories. Easily override and modify settings. Use wildcards and optional settings files.

Github星跟蹤圖


wemake.services
Build Status
Coverage
Docs
Python Version
wemake-python-styleguide

Organize Django settings into multiple files and directories. Easily
override and modify settings. Use wildcards in settings file paths
and mark settings files as optional.

Read this blog post
for more information.
Also, check this example project.

Requirements

While this package will most likely work with the most versions of django, we officially support:

  • 1.11
  • 2.1
  • 2.2
  • 3.0

This package has no dependencies itself.

In case you need older python / django versions support,
then consider using older versions.

Installation

pip install django-split-settings

Usage

Replace your existing settings.py with a list of components that
make up your Django settings. Preferably create a settings package
that contains all the files.

Here's a minimal example:

from split_settings.tools import optional, include

include(
    'components/base.py',
    'components/database.py',
    optional('local_settings.py')
)

In the example, the files base.py and database.py are included
in that order from the subdirectory called components/.
local_settings.py in the same directory is included if it exists.

Note: The local context is passed on to each file, so each
following file can access and modify the settings declared in the
previous files.

We also made a in-depth tutorial.

Tips and tricks

You can use wildcards in file paths:

include('components/my_app/*.py')

Note that files are included in the order that glob returns them,
probably in the same order as what ls -U would list them. The
files are NOT in alphabetical order.

You can modify common settings in environment settings simply importing them

# local_settings.py
from components.base import INSTALLED_APPS

INSTALLED_APPS += (
  'raven.contrib.django.raven_compat',
)

Do you want to contribute?

Read the CONTRIBUTING.md file.

Version history

See CHANGELOG.md file.

主要指標

概覽
名稱與所有者wemake-services/django-split-settings
主編程語言Python
編程語言Python (語言數: 1)
平台
許可證BSD 3-Clause "New" or "Revised" License
所有者活动
創建於2013-05-17 06:04:30
推送於2025-05-17 14:58:37
最后一次提交2025-05-17 16:58:37
發布數15
最新版本名稱1.3.2 (發布於 2024-07-05 17:29:50)
第一版名稱v0.1.2 (發布於 2015-05-05 09:23:30)
用户参与
星數1.2k
關注者數16
派生數69
提交數565
已啟用問題?
問題數48
打開的問題數5
拉請求數390
打開的拉請求數2
關閉的拉請求數136
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?