Django使用靜態文件


除了由服務器生成的HTML文件外,網頁應用一般需要提供其它必要的文件 —— 比如圖片文件、JavaScript腳本和CSS樣式表 —— 來為用戶呈現出一個完整的網站。 在Django中,我們將這些文件稱為“靜態文件”。

對於小型項目,這不是個大問題,因為你可以將它們放在你的網頁服務器可以訪問到的地方。 然而,在大一點的項目中 —— 尤其是那些由多個應用組成的項目 —— 處理每個應用提供的多個靜態文件集合開始變得很難。

這正是django.contrib.staticfiles的用途:它收集每個應用(和任何你指定的地方)的靜態文件到一個單獨的位置,這個位置在線上可以很容易維護。

 

1、新建目錄

根目錄下新建文件夾 static 目錄結構如下:

static
css
style.css
images
1.jpg
js
main.js

 

 

2、修改Django相關文件

#setting.py 增加以下配置
STATIC_URL = '/static/'
HERE=os.path.dirname(os.path.dirname(__file__))
STATIC_ROOT =os.path.join( HERE , 'static').replace('\\','/')
STATICFILES_DIRS = (
("images", os.path.join(STATIC_ROOT,'images').replace('\\','/')),
("css", os.path.join(STATIC_ROOT,'css').replace('\\','/')),
("js", os.path.join(STATIC_ROOT,'js').replace('\\','/')),
)
#urls.py 增加以下配置
urlpatterns += static(settings.STATIC_URL, document_root = settings.STATIC_ROOT )

 

 

3、調用靜態文件

{% load staticfiles %} #必須
<link rel="stylesheet" type="text/css" href="{% static 'css/main.css' %}" />
<script src="{% static 'js/main.js' %}" type="text/javascript"></script>
<img src="{% static 'images/1.jpg' %}" width="100px">

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM