2010-11-05 6 views
1

Я довольно новичок в Python и Django, и теперь я работаю над webapp, который будет запущен на нескольких серверах. У каждого сервера есть свои небольшие детали конфигурации (команды, пути к файлам и т. Д.), Которые я хотел бы просто сохранить в файле настроек, а затем иметь другую копию файла в каждой системе.Где я могу поместить детали конфигурации? [Python]

Я знаю, что в Django есть файл настроек. Однако, это только для вещей, связанных с Django? Или я должен положить туда этот тип вещей?

ответ

1

Это для любого типа настроек, но лучше разместить локальные настройки в отдельном файле, чтобы обновления версий не сбивали их. Попросите файл глобальных настроек обнаружить наличие локального файла настроек, а затем либо импортировать все из него, либо просто execfile().

1

Существует не стандартное место для размещения файлов конфигурации. Однако вы можете легко создать свой собственный файл конфигурации. ConfigParser может удовлетворить ваши потребности (и является встроенным Python).

Независимо от формата, который я использую для моего конфигурационного файла, я обычно мои скрипты, которые зависят от настроек получить путь конфигурационного файла из переменных окружения

(с использованием Баша):

export MY_APP_CONFIG_PATH=/path/to/config/file/on/this/system

, а затем мои скрипты подобрать настройки так:

import os 
path_to_config = os.environ['MY_APP_CONFIG_PATH'] 
Смежные вопросы