【问题标题】:django {% inlcude %} throws Template Errordjango {% include %} 抛出模板错误
【发布时间】:2021-03-09 13:47:03
【问题描述】:

问题:我有一个文件base.html,其中有一个{% block content %},用于页面内容,还有一个{% inlcude %},用于基本模板的导航栏(引导程序)。但是包含没有找到模板 (TemplateDoesNotExist),我相信我没有拼错。我必须提供什么才能找到模板吗?

base.html 重要内​​容:

<body>
    {% include "navbar.html" %}

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

一些重要信息: 我在 base.html 文件中下载了引导程序; base.html 和 navbar.html 在同一个文件夹中。

【问题讨论】:

  • 你能用你的目录结构更新问题吗?
  • 还要检查您的 settings.py 以获取模板列表。
  • @ShivendraPratapKushwaha 我要在那里添加什么?
  • 即使模板在同一目录下,它也会开始搜索基本目录。在您的目录结构中,在模板内部您有主页。因此您可以将 {% include "navbar.html" %} 更改为 {% include "home/navbar.html" %} 并检查它是否适合您。
  • 您也可以查看此文档以了解覆盖模板的工作原理...docs.djangoproject.com/en/3.1/howto/overriding-templates

标签: django django-templates


【解决方案1】:

由于在您的目录结构中,您在模板中有主目录。请按以下方式更改代码:

<body>
    {% include "home/navbar.html" %}

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-21
    • 1970-01-01
    • 2014-02-03
    • 1970-01-01
    相关资源
    最近更新 更多