Блог Синявского
  • Разделы
  • Метки
  • Все статьи

Изменения настройки темплейтов в Django 1.8

1

Изменения настройки темплейтов в Django 1.8

В новом проекте я стал использовать новую версию Django и столкнулся с несколькими проблемами, одной из которых были настройки шаблонов. И чтобы все заработало как можно быстрее я начал изучать документацию по новым настройкам и опциям в версии 1.8 и инструкцию по апдейту.

Так в соответствии с документацией все настройки TEMPLATE_* стали устаревшими и в файле settings.py были заменены одной настройкой TEMPLATES.

В общем виде она выглядит так:

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [],
        'APP_DIRS': True,
        'OPTIONS': {
            # ... some options here ...
        },
    },
]

Таким образом у меня получилось, что 2 настройки стали устаревшими в версии 1.8 по сравнению с версией 1.7. Пример старых настроек:

TEMPLATE_CONTEXT_PROCESSORS = (
    'django.core.context_processors.request',
    'django.contrib.auth.context_processors.auth',
    'django.core.context_processors.static',
    'django.contrib.messages.context_processors.messages',
    'annoying.context_processors.site_constants'
)

TEMPLATE_DIRS = (
    os.path.join(os.path.dirname(os.path.dirname(__file__)),'templates'),
)

И новые настройки:

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(os.path.dirname(os.path.dirname(__file__)),'templates')],
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.contrib.auth.context_processors.auth',
                'django.template.context_processors.request',
                'django.template.context_processors.debug',
                'django.template.context_processors.i18n',
                'django.template.context_processors.media',
                'django.template.context_processors.static',
                'django.template.context_processors.tz',
                'django.contrib.messages.context_processors.messages',
            ],
        },
    },
]

В TEMPLATE_CONTEXT_PROCESSORS поменялись пути у модулей django.core.* на django.template.* и ищменилась конструкция.

Теперь все работвет с Django 1.8.



  • ← сюда
  • туда →

comments powered by Disqus

Опубликовано

24.07.2015

Обновление

05.05.2022

Категории

django

Тэги

  • cms 4
  • django 12
  • example 16
  • python 30

Всегда на связи

  • Блог Синявского - Ничего не переносить на завтра, это тоже проблема с прокастинацией?
  • © Алексей Синявский, по лицензии CC BY-SA если не указано иное.
  • С использованием Pelican. Тема: Elegant от Talha Mansoor