Джанго шаблон расширяет не работает - PullRequest
10 голосов
/ 31 декабря 2011

Это мой base.html

<!DOCTYPE html> 
<head> 
<title> My Site </title>
</head> 
<body>
<div id="wrapper">  
<!-- HEADER START -->
{% block nav %} {% endblock %}
{% block index %} {% endblock %}
</div> 
</body>
</html>

Это мой nav.html

{% extends "base.html" %}
{% block nav %}
<div id="header"> 
<div class="inner">

<div class="nav"> 
<ul> 
<li class="current"><a href="index.html">Home</a></li> 
<li><a href="about.html">About</a></li> 
<li><a href="blog_right.html">Blog</a></li>                        
<li><a href="contact.html">Contact</a></li> 
</ul>                     
</div>  
<div class="clear"></div>           
</div><!-- .inner end --> 
</div><!-- #header end --> 
<!-- HEADER END -->
{% endblock %}

Это мой index.html

{% extends "base.html" %}
{% block index %}
<p> hello </p>
{% endblock %}

У меня естьделал это несколько раз раньше, но я не знаю, почему это не работает?URL-адреса и представления здесь .

Ответы [ 2 ]

12 голосов
/ 31 декабря 2011

Ну, все в порядке, проблема в том, что вы запутались, просто называние блока в базе не вызывает его.Отметьте разницу между extends и include.Вы подсчитали, распространяется, чтобы включить.

Когда вы вызываете say index.html, если он появится в ваших представлениях, он будет отображен правильно.Эффекта, которого вы хотите, можно достичь, изменив base.html в ваших представлениях на index.html.

Надеюсь, это поможет.Подробнее можно прочитать здесь: https://docs.djangoproject.com/en/dev/topics/templates/#template-inheritance

1 голос
/ 30 ноября 2015

Для большего количества людей, которые оказываются здесь (как я), главное отметить, что когда вы используете {% extends 'something.html' %}, вы не можете использовать ничего, кроме этих тегов шаблонов на верхнем уровне.

Очевидно, что внутри этих тегов могут быть html-теги (например, блочные теги), но НИЧЕГО не ставьте вне шаблонных тегов.

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