2016-07-04 4 views

答えて

1

無視するために何も指定しないでオーバーライドするブロックに入れることができます。たとえば:

base.html

含ま-page.htmlを
{% block content %} 
    <div> 
     This should show on all pages except for this one 
    </div> 
{% endblock content %} 

(div要素は、このページに含まれます)

{% extends 'base.html' %} 

は無視-page.htmlを(このページではdivは無視されます)

{% extends 'base.html' %} 

{% block content %} 
{% endblock content %} 
1

テンプレート継承docs

からテンプレートエンジンは{%ブロック%} base.htmlでタグに気づくであろうし、子テンプレートの内容とそれらのブロックを置き換えます。

しかし

子テンプレートは、ブロックを定義していない場合は、 親テンプレートの値が代わりに使用されます。 親テンプレート内の{%block%}タグ内のコンテンツは常にフォールバックとして使用されます。

したがって、{%block%}タグをbase.htmlに使用できます。

{% block content %} 
<!-- Your content here--> 
{% endblock %} 

あなたは親の{%block%}として、すべてのテンプレートにそのブロックを定義する必要はありませんは、フォールバックとして使用されています。

{% extends 'base.html' %} 

だからあなたの例外的な場合には、単にデータがないか、何か他のものとのこと{%ブロック%}タグを定義します。

{% extends 'base.html' %} 

{% block content %} 
<!-- Nothing goes here --> 
{% endblock content %} 
関連する問題