Расширить существующий список в настройках Django - PullRequest
4 голосов
/ 06 мая 2011

Я пытаюсь разрешить более гибкий ввод даты в свое приложение и хотел бы использовать настройки Django по умолчанию. Согласно документации, я могу определить DATE_INPUT_FORMATS в settings.py, но я хотел бы сохранить значения по умолчанию и добавить несколько других.

Я попытался расширить его, как если бы он уже существовал, который с треском провалился:

DATE_INPUT_FORMATS += ['%m-%d-%y',]

Выход: NameError: name 'DATE_INPUT_FORMATS' is not defined

Я также попытался импортировать настройки по умолчанию из django.conf, но это циклично, поскольку он пытается включить мой settings.py, в который я загружаю его.

from django.conf import settings as default_settings
DATE_INPUT_FORMATS = default_settings.DATE_INPUT_FORMATS
DATE_INPUT_FORMATS += ['%m-%d-%y',]

Урожайность:

Error: Can't find the file 'settings.py' in the directory containing './manage.py'. It appears you've customized things.
You'll have to run django-admin.py, passing it your settings module.
(If the file settings.py does indeed exist, it's causing an ImportError somehow.)

Как правильно расширить настройки по умолчанию в Django settings.py?

Ответы [ 2 ]

7 голосов
/ 06 мая 2011

Вы должны иметь возможность импортировать форму django.conf.global_settings

0 голосов
/ 06 мая 2011

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

Посмотрите исходный код django для django.conf.global_settings.py для значений по умолчанию.

DATE_INPUT_FORMATS = (
    '%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y', # '2006-10-25', '10/25/2006', '10/25/06'
    '%b %d %Y', '%b %d, %Y',            # 'Oct 25 2006', 'Oct 25, 2006'
    '%d %b %Y', '%d %b, %Y',            # '25 Oct 2006', '25 Oct, 2006'
    '%B %d %Y', '%B %d, %Y',            # 'October 25 2006', 'October 25, 2006'
    '%d %B %Y', '%d %B, %Y',            # '25 October 2006', '25 October, 2006'

        '%m-%d-%y'        # <-- Yours
)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...