Шаблон не найден Ошибка: почему добавление закомментированного шаблона все еще обрабатывается - PullRequest
0 голосов
/ 26 марта 2020

Django версия 2.0.7, Python3 .6

<!DOCTYPE html>
<html>
<head>
    <title></title>
</head>
<body>
    <h1>My Own Website via base file</h1>
    <p>Lorem ipsum</p>


    <!-- {% include 'navbar.html'  %} -->

    {% block content %}
    {% endblock %}
</body>
</html>

Приведенный выше код выдает ошибку, а следующий - нет.

<!DOCTYPE html>
<html>
<head>
    <title></title>
</head>
<body>
    <h1>My Own Website via base file</h1>
    <p>Lorem ipsum</p>

    <!-- comment -->

    {% block content %}
    {% endblock %}
</body>
</html>

Разница лишь в содержании комментария. Может кто-нибудь объяснить? Я использую этот шаблон кода для изучения Django, и этот пример наследования в шаблонах создает

TemplateDoesNotExist в / home / ** error.

Ответы [ 2 ]

1 голос
/ 26 марта 2020

для комментирования используйте django тег комментариев к шаблону {# #}, замените - <!-- {% include 'navbar.html' %} --> на - {# {% include 'navbar.html' %} #}

1 голос
/ 26 марта 2020

Django средство визуализации шаблонов не учитывает HTML комментариев для шаблонов фильтров и тегов. Рендерер обрабатывает комментарии html так же, как и любой другой элемент html. Единственный способ закомментировать фильтр или тег в шаблоне django - с помощью блока комментария шаблона django или строки комментария.

Итак, в шаблоне, который выдает ошибку, вы видите, что он пытается найти шаблон navbar.html, чтобы включить его, но он не существует.

...