I have a structure where there's normally a page heading in (% block heading %}
in my base template:
base.html
<h2>{% block heading %}{% endblock %}</h2>
Most of the time, I'll pass in a heading like this through templates that extend base:
extends-base.html
{% block heading %}Super Cool Page!{% endblock %}
However, for a special page, I don't want to have a page heading:
extends-base-special.html
{% block heading %}{% endblock %}
Ideally, this should exclude the <h2>
tags. Now, I could just make the all of the extending templates include the <h2>
tags, but that violates DRY, as every page should have the same element for the page-level heading. What I'd prefer to do is this (which doesn't appear to work):
base-prefered.html
{% if heading %}
<h2>{% block heading %}{% endblock %}</h2>
{% endif %}
Is this doable somehow on the template level, or do I have to tuck into views for this?