20

我收到以下错误:

Template error

In template /home/mo/python/django/templates/yoga/index.html, error at line 1
Caught TemplateDoesNotExist while rendering: base.html
1 {% extends "base.html" %}
2 
3 {% block main %}
4     <p>{{ page.title }}</p>
5     <p>{{ page.info}}</p>
6     <a href="method/">Method</a>
7 {% endblock %}
8 

这是我的 base.html 文件,它与 index.html 位于同一位置

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    <div style="width:50%; marginleft:25%;">
    {% block main %}{% endblock %}
    </div>

这里到底发生了什么?base.html 文件应该位于其他地方吗?

4

4 回答 4

21

“在同一个地方” asyoga/index.html表示模板实际上是yoga/base.html.

于 2010-06-17T23:54:59.000 回答
18

假设 TEMPLATE_DIRS 包含/home/mo/python/django/templates/,没有.../yoga/,所以你需要:

搬进base.html_/home/mo/python/django/templates/

或者

{% extends "yoga/base.html" %}在你的模板中

于 2010-06-18T05:27:49.757 回答
4

base.html 是否位于设置文件的 TEMPLATE_DIRS 列表中的目录中?

于 2010-06-18T00:03:55.717 回答
1

Base.html文件必须位于模板文件夹的基础才能使用 'base.html' ,如果位于另一个文件夹中,例如:templates / home / base.html,则必须使用指定路径

{ % Extends ' home / base.html '% }
于 2015-06-05T05:46:44.523 回答