django-appconf

Софтуер снимки:
django-appconf
Софтуер детайли:
Версия: 0.5
Дата на качване: 15 Apr 15
Розробник: Jannis Leidel
Разрешително: Безплатно
Популярност: 12

Rating: 2.0/5 (Total Votes: 1)

Джанго-appconf е Django приложение за конфигуриране обект, за да се използва за обработка на конфигурационните настройки по подразбиране на пакетирани приложения грациозно & Nbsp;. Да речем, че има един апартамент, наречена MyApp и искате да дефинирате няколко просрочията, и се отнасят до стойностите по подразбиране лесно в Код приложения. Добави settings.py да models.py приложението ви:
от appconf внос AppConf
клас MyAppConf (AppConf):
& Nbsp; SETTING_1 = "една"
& Nbsp; SETTING_2 = (
& Nbsp; "две",
& Nbsp;)
& Nbsp; клас Meta:
& Nbsp; app_label = 'MyApp "
Настройките се инициализират с етикета на ап къде настройката се намира на адрес. Например Ако вашият models.py е в пакета за MyApp, представката от настройките ще бъде MyApp.
Класът на MyAppConf автоматично ще погледне глобално настройка Django да определя всяка от настройките. Например добавянето на това да settings.py сайта ви ще определи настройката на SETTING_1 ап съответно:
MYAPP_SETTING_1 = "Уно"
<Силен> Usage
Вместо да се използва от настройките django.conf внос, както обикновено ще направи по желание можете да преминат към използване на своите приложения собствени настройки модул за достъп до настройките:
от myapp.models внос MyAppConf
myapp_settings = MyAppConf ()
принт myapp_settings.MYAPP_SETTING_1
AppConf клас автоматично работи като заместител за други настройки, които не са свързани с приложението. Например следния код е напълно валидна:
от myapp.models внос MyAppConf
настройки = MyAppConf ()
ако "MyApp" в settings.INSTALLED_APPS:
& Nbsp; печат "Уау, MyApp е инсталиран!"
В случай, че искате да зададете някои настройки ад хок, можете просто да премине стойността когато instanciating класа AppConf:
от myapp.models внос MyAppConf
настройки = MyAppConf (SETTING_1 = 'нещо съвсем различно ")
ако "различен" в settings.MYAPP_SETTINGS_1:
& Nbsp; печат "Уау, аз съм различна!
<Силен> Потребителски работа
Всяка от настройките могат да бъдат индивидуално конфигурирани с обратни извиквания. Например, в случай на стойност настройка зависи от други настройки или други зависимости. Следващият пример задава една настройка на различна стойност в зависимост от условията на глобализация:
от настройките django.conf внос
от appconf внос AppConf
клас MyCustomAppConf (AppConf):
& Nbsp; Разрешение = True
& Nbsp; Def configure_enabled (самостоятелно, стойност):
& Nbsp; връщане стойност и не self.DEBUG
Стойността на MYAPP_ENABLED ще варира в зависимост от стойността на настройката на световната DEBUG.
Всеки от настройките на приложението може да се персонализира чрез осигуряване на метод configure_ който взема стойността по подразбиране, както е определено в атрибутите на класа като единствен параметър. Методът трябва да се върне стойността, която се използва за настройка.
След всяка от метода на _configure са се нарече, класа на AppConf допълнително ще се обадя на главния метод за конфигуриране, които могат да бъдат използвани, за да се направи по-нататъшна работа по поръчка конфигурация, например Ако няколко настройки зависят един от друг. За тази речника configured_data е осигурено в създаването инстанция:
от настройките django.conf внос
от appconf внос AppConf
клас MyCustomAppConf (AppConf):
& Nbsp; Разрешение = True
& Nbsp; MODE = "развитие"
& Nbsp; Def configure_enabled (самостоятелно, стойност):
& Nbsp; връщане стойност и не self.DEBUG
& Nbsp; Def конфигуриране (самостоятелно):
& Nbsp; режим = self.configured_data ["MODE"]
& Nbsp; активиран = self.configured_data ["Активиран"]
& Nbsp; ако не е включен и режим = "развитие"!:
& Nbsp; печат "ВНИМАНИЕ: ап не е активирана в режим% ите!" % Режим

Какво ново в тази версия:.

  • Добавени тестове с 100% покритие
  • Добавено способност да подклас Мета класове.
  • Фиксирани различни бъгове с subclassing и конфигурирането на подкласове.

Какво ново във версия 0.2.2:

  • Фиксирана друг въпрос в Configure () API.

<силни> Изисквания :

  • Python
  • Django

Друг софтуер на разработчика Jannis Leidel

Коментари към django-appconf

Коментари не е намерена
добавите коментар
Включете на изображения!