2015-12-11 47 views
0

我想知道如何爲不同的子頁面正確附加媒體文件(css/js)。Django - 針對不同模板的不同媒體

我有一個兩難: 在模板文件中使用{% block %}<script type="text/javascript" src="{% static 'js/script.js' %}"></script>{% endblock %}。或者註冊attach_media(type, url)等功能並在views.py中使用它。

還有一類「媒體」的形式,在那裏我可以:

副不同的文件 - 如樣式表和腳本 - 與需要這些資產的形式和部件

但目前我不確定每個視圖都會使用表單。

哪種解決方案最好?

回答

1

第一個解決方案(在模板中添加靜態文件)是最常用的。

1

您需要區分您正在嘗試執行的操作,如果您嘗試引用模板中的靜態資產,那麼您需要使用static模板標記。

形式的media類是有指定需要爲了讓您的形式情況像您期望的功能是文件。

+0

我會用一個例子: 我只想在** client.html **中包含** client.js **,所以它不會加載其他子頁面上的任何內容。 我會這樣做,方便簡單。 您如何看待註冊函數attach_media並在views.py中指定媒體? – user3041764

+0

@ user3041764 - 這聽起來好像與表格無關,因此您甚至無法使用媒體類 – Sayse

+0

@ user3041764 - 此外,大多數情況下,您的視圖不應該關心其顯示方式 – Sayse