Создал отдельную тему по просьбе.
В общем, есть базовый шаблон base.html, в нём есть два цикла {% for ... %}, которые не находятся в каком-либо {% block %}. Вот один из них:
{% for s in sections %}
{{ s }}
{% for a in s.article_set.all %}
{{ a }}
{% empty %}
(Пусто)
{% endfor %}
{% endfor %}
И есть дочерний шаблон content.html:
{% extends "base.html" %}
{% block title %}{{ title }}{% endblock %}
{% block content%}
{% block article_title %}{{ title }}{% endblock %}
{{ title.date|date:'j E Y, G:i' }}
{% block text %}{{ title.content|safe }}{% endblock %}
{% endblock %}
И почему-то эти циклы не передаются в дочерний шаблон, но прекрасно отображаются в базовом. Вот функции представления views.py:
def main_page(request):
sections=Section.objects.all()
articles=Article.objects.all().order_by('-date')
news=News.objects.all().order_by('-date')
return render_to_response('base.html', {'sections': sections, 'articles': articles, 'news': news})
def article(request, number):
try:
number=int(number)
except ValueError:
raise Http404()
article=Article.objects.get(id=number)
#sections=Section.objects.all()
#articles=Article.objects.all().order_by('-date')
#return render_to_response('content.html', {'title': article, 'sections': sections, 'articles': articles})
return render_to_response('content.html', {'title': article})
Если раскомментировать строки, то тогда всё работает, но по-моему теряется вся суть шаблонов django, если дублировать представления.