Я хочу, чтобы настройки django, такие как весенняя загрузка *.yml
, могли развиваться, настройки по умолчанию могли устанавливаться, а активные настройки могли перезаписывать настройки по умолчанию.
Я пробовал много способов, наконец нашел этот путь, я хочу получить некоторые рекомендации или советы.
см. Несколько настроек Django
Я создаю модуль project.settings, добавляю несколько файлов настроек и изменяю manage.py
как:
import os
import sys
from mysite.settings import settings
if __name__ == '__main__':
os.environ.setdefault('DJANGO_SETTINGS_MODULE', settings.ACTIVE_SETTINGS)
В файле settings.py по умолчанию добавьте ACTIVE_SETTINGS для manage.py для импорта.
файл настроек по умолчанию mysite/settings/settings.py
как:
import datetime
import os
ACTIVE_SETTINGS = 'mysite.settings.dev_settings'
more default settings.....
В разработке dev_settings.py
установлен набор файлов по умолчанию
см. # custom-default-settings
в mysite/settings/dev_settings.py
как:
from django.conf import settings
from mysite.settings import settings as default
# use this could set default settings to active setting
settings.configure(default, DEBUG=True)
more dev settings.....
Установка django таким способом может привести к изменению только одного параметра ACTIVE_SETTINGS для разработки, и параметры по умолчанию также могут быть установлены, если файл ACTIVE_SETTINGS не задан, я читал много блогов, ни один другой способ не мог бы лучше этого.