render_to_string выдает ошибку, тогда как render работает - PullRequest
0 голосов
/ 16 марта 2019

Я пытаюсь вернуть ответ на запрос Ajaz. Представление достигается в коде Python, но если я пытаюсь отобразить ответ на строку, используя render_to_string, я получаю сообщение об ошибке:

django.template.exceptions.TemplateDoesNotExist:

Если я запускаю метод рендеринга с теми же параметрами, я не получаю сообщение об ошибке. Код для каждого выглядит так:

    html = render_to_string(request, 'planner/viewconnections.html', { 'routes' : routelist })
    render(request, 'planner/viewconnections.html', { 'routes' : routelist })

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

Моя конфигурация шаблонов в settings.py выглядит следующим образом:

TEMPLATES = [
{
    'BACKEND': 'django.template.backends.django.DjangoTemplates',
    'DIRS': [],
    'APP_DIRS': True,
    'OPTIONS': {
        'context_processors': [
            'django.template.context_processors.debug',
            'django.template.context_processors.request',
            'django.contrib.auth.context_processors.auth',
            'django.contrib.messages.context_processors.messages',
        ],
    },
},

]

Я попытался добавить каталог шаблонов, как показано ниже, но все равно получаю ту же ошибку.

ROJECT_ROOT = os.path.abspath(os.path.join(os.path.dirname((__file__)),".."))

   # Other settings...
   TEMPLATE_DIRS = (
    os.path.join(PROJECT_ROOT, "planner/templates"),
)

Может кто-нибудь помочь? Мой поиск по этой проблеме позволил мне добавить TEMPLATE_DIRS в настройках, но это не сработало. Я не понимаю, почему один метод рендеринга может подобрать шаблон, а другой - нет.

1 Ответ

1 голос
/ 16 марта 2019

в django render_to_string запрос параметр не требуется

синтаксис

render_to_string(template_name, context=None, request=None, using=None)



 html = render_to_string('planner/viewconnections.html', { 'routes' : routelist })

см. https://docs.djangoproject.com/en/2.1/topics/templates/#django.template.loader.render_to_string

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