понедельник, 24 июля 2017 г.

История одной ошибки

Недавно я начал проект DjangoSite. Задумка простая – создать шаблон готового к работе сайта, который было бы не стыдно добавить в свое портфолио.
В качестве шаблонизатора решил прикрутить Jinja2 вместо стандартных Django-шаблонов.
Таким образом, соответствующая часть файла settings.py выглядела так:


TEMPLATES= [ {
'BACKEND': 'django.template.backends.jinja2.Jinja2',
'DIRS': [
'/home/alex/djangosite/html/jinja2/',
],
'APP_DIRS': False,
'OPTIONS': {
'environment': 'djangosite.jinja2.environment',
'autoescape': True,
'auto_reload': DEBUG,
'loader': 'jinja2.FileSystemLoader',
'extensions': ['jinja2.ext.i18n'],
}}, ]

Такая конфигурация по какой-то причине вызывала ошибку «TypeError: cannot create weak reference to 'str' object».


Я потратил много времени на поиски причины этой ошибки, попутно исправив несколько мелких недочетов.
Наконец, появилась мысль, что причина ошибки, возможно, находится в загрузчике jinja2.FileSystemLoader. Я удалил соответствующую строку из файла settings.py и, – о, чудо, – все заработало как надо.

Отправить сообщение автору:

Имя

Электронная почта *

Сообщение *

Share buttons