Где я должен поместить детали конфигурации?[Python] - PullRequest
1 голос
/ 05 ноября 2010

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

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

Ответы [ 3 ]

2 голосов
/ 05 ноября 2010

На этой странице обсуждаются ваши и некоторые другие ситуации, связанные с настройками на серверах Django: http://code.djangoproject.com/wiki/SplitSettings

1 голос
/ 05 ноября 2010

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

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

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

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

, а затем мои сценарии выбирают настройки следующим образом:

import os
path_to_config = os.environ['MY_APP_CONFIG_PATH']
1 голос
/ 05 ноября 2010

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...