如標題所示,只加載Django模板中的第一個靜態文件。Django只加載模板中的第一個靜態文件
這裏是有問題的代碼:
{% load staticfiles %}
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>{% block title %}{% endblock title %}</title>
<link rel="stylesheet" href="{% static 'global/css/grid.css' %}" media="screen" title="grid" charset="utf-8">
<link rel="stylesheet" href="{% static 'global/css/style.css' %}" media="screen" title="main" charset="utf-8">
</head>
我已經「全球化」設置是否正確,我STATICFILES_DIRS,既有「grid.css」和「的style.css」存在於該目錄中,這兩種風格做不衝突。
但是,當我使用上面的代碼渲染頁面時,只加載'grid.css'。
當我檢查鉻檢查元素,顯示兩條鏈路/正確呈現:
<link rel="stylesheet" href="global/css/grid.css" media="screen" title="grid" charset="utf-8">
<link rel="stylesheet" href="global/css/style.css" media="screen" title="main" charset="utf-8">
但是,當我檢查「源」的鉻合金開發工具它顯示了文件夾「靜態/全球/ css',並且在其內部僅顯示顯示grid.css。所以Django沒有在響應中提供style.css。
我知道style.css的作品,當我註釋掉加載grid.css的行,style.css 確實加載了。
再次,似乎只有模板中請求的第一個靜態文件在響應中傳遞。
所以如果你改變了CSS文件的順序,它又是第一個會加載? – yedpodtrzitko
是的,如果我在上面的代碼中切換grid.css和style.css,那麼style.css會加載並且grid.css不會 – 99lives