对一个已存在的被包含模板仍然出现模板不存在错误
我在 realestate/settings.py 里有这些模板设置:
TEMPLATES = [
{
"BACKEND": "django.template.backends.django.DjangoTemplates",
"DIRS": [BASE_DIR / "templates"],
"APP_DIRS": True,
"OPTIONS": {
"context_processors": [
"django.template.context_processors.request",
"django.contrib.auth.context_processors.auth",
"django.contrib.messages.context_processors.messages",
],
},
},
]
以及这个模板片段,它引用了来自不同文件夹的另一个模板片段。
templates\partials\listings\detail\user_card.html:
{% load static %}
{# Card #}
<div class="card mb-3">
<div class="row row-cols-sm-2 row-cols-md-1 g-0">
{# Card image #}
<div class="col">
<img class="rounded-circle w-50 mx-auto my-3" src="{% static '/images/avatar-3814081_640.png' %}" alt="Avatar">
</div>
{# Card body #}
<div class="col">
<div class="card-body">
<a class="text-decoration-none" href="{% url 'user-detail' user.id %}">
<h2 class="card-title fw-bold">{{ user }}</h2>
</a>
</div>
</div>
</div>
{% include "../../users/detail/footer" %} {# template already exists #}
</div>
我在 TemplateDoesNotExist 上遇到了 partials/users/detail/footer,但它已经存在。甚至连 {% include "partials/users/detail/footer" %} 也不起作用。
文件夹结构:

解决方案
由于Django会严格检查文件名,因此你必须放置 partials/user/detail/footer.html,因为它正在寻找HTML文件,而不是文本文件。若本解答对你有帮助,请勾选复选框并点个赞。
站内所有文章版权归属LeftHeroAI导航站,无授权禁止任何主体转载、抄袭、复制内容,亦不得私自架设镜像站点。一经侵权,本站将通过法律途径追责。