2012-10-23 6 views
45

私は数ページあります。私はすべてのページのためにユニークなCSSをロードする必要があります。 すべての静的ファイルに対して、私はthisを使用します。CSSのDjangoロードブロック

{% block css %} 

{% endblock %} 

しかし、例えば、contact.htmlに私が使用します:index.htmlをの頭の中で私が持っている

{% extends "index.html" %}  
{% block css %} 
    <link rel="stylesheet" href="{% static "css/contact.css" %}" type="text/css" /> 
    {% endblock %} 

とその印刷エラー: 無効なブロックタグ: '静的' を、予想される 'エンドブロック'。それを修正するには?

答えて

91

です。

+12

この '関数'を持つテンプレートを '拡張'していても、まだ読み込む必要があることに興味があります。子テンプレートは、呼び出されたブロックをオーバーライドしない限り、この関数を継承する必要があります。 TL; DR - これは実際に動作します。 – htmldrum

+0

私は彼の質問に@JRMが非常に良い質問を見つける。それは誰でも知っていますか? – Ward

+0

私はこれと同じことを見つけました!すべての子テンプレートに '{%load whatever%}'を入れなければならないのは非常に危険です。 Djangoチームの言葉どんなことが起こるのか/彼らがそれを修正しようとしているのであれば?これとは対照的に、 – swizzard

0

それはあなたが最初{% load static %}を使用する必要が

{% block css %} 

{% endblock %} 
+0

申し訳ありませんが、私は最初のコードで間違いがあります。ブロックのCSS doesnt仕事 – tim

+0

あなたは今何を得ているのですか? –

+1

無効なブロックタグ: 'static'、expected 'endblock' – tim

関連する問題