Да, определенно.Файл settings.py - это всего лишь Python, так что вы можете делать там все, включая динамическую настройку и импорт других файлов для переопределения.
Итак, здесь есть два подхода.Во-первых, не нужно жестко кодировать любые пути, а вычислять их динамически.
PROJECT_ROOT = os.path.abspath(os.path.dirname(__file__))
TEMPLATE_DIRS = [
os.path.join(PROJECT_ROOT, "templates"),
]
и т. Д.Волшебное ключевое слово Python __file__
дает путь к текущему файлу.
Вторым является файл local_settings.py
вне SVN, который импортируется на конце основногоsettings.py и переопределяет любые настройки там:
try:
from local_settings import *
except ImportError:
pass
Попробуйте / исключите, чтобы убедиться, что он все еще работает, даже если local_settings не присутствует.
Естественно, вы можете попробовать комбинациюэти подходы.