2012-10-23 41 views
45

我有幾頁。對於每一頁我需要加載獨特的CSS。 對於我使用this的所有靜態文件。 index.html中的頭,我有:Django加載塊爲css

{% block css %} 

{% endblock %} 

但是,例如,在contact.html我用:

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

而且它的打印錯誤: 無效的塊標籤: '靜態' ,預計'endblock'。如何解決它?

回答

91

您需要使用{% load static %}第一。

+12

有趣的是,即使我'擴展'了一個具有這個'函數'的模板,我仍然需要加載這個。我覺得像子模板應該繼承這個函數,如果它不覆蓋它被調用的塊。 TL; DR - 這實際上有效。 – htmldrum

+0

我發現@JRM他的問題是一個很好的問題。任何人都知道這是爲什麼? – Ward

+0

我找到了同樣的東西!不得不在每個子模板中放入{%load whatever%},可能多次。 Django爲什麼會發生這種情況/他們是否計劃修復它? – swizzard

0

{% block css %} 

{% endblock %} 
+0

對不起,我在第一個代碼中有錯誤。塊css不工作 – tim

+0

你現在得到什麼錯誤? –

+1

無效的塊標記:'static',預計'endblock' – tim