django配置app中的靜態(tài)文件步驟
配置靜態(tài)文件的兩種方式:
1 配置單獨(dú)app下的靜態(tài)文件,比如某個(gè)app下的單獨(dú)的圖片。
2 配置整個(gè)project下的靜態(tài)文件,適用于那些和單獨(dú)app關(guān)聯(lián)不大的文件,比如jquery bootstrap 等等
配置步驟:
首先,我們需要確認(rèn)在settings.py文件中的INSTALLED_APPS變量中存在 django.contrib.staticfiles
INSTALLED_APPS = ( ’django.contrib.admin’, ’django.contrib.auth’, ’django.contrib.contenttypes’, ’django.contrib.sessions’, ’django.contrib.messages’, ’django.contrib.staticfiles’, )
2.1 如果我們要配置單獨(dú)app下的靜態(tài)文件的話,執(zhí)行此步驟。
在settings.py文件中定義 STATIC_URL 變量。
STATIC_URL = ’/static/’
2.2 如果我們要配置整個(gè)project下的靜態(tài)文件的話,執(zhí)行此步驟。
在settings.py文件中定義 STATICFILES_DIRS 變量
STATICFILES_DIRS = ( os.path.join(BASE_DIR, 'static'), # 首選project靜態(tài)文件搜尋路徑 ’/var/www/static/’, # 第二選project靜態(tài)文件搜尋路徑,還可以有第三選,第四選…… )
3.1 如果我們要配置單獨(dú)app下的靜態(tài)文件的話,執(zhí)行此步驟。
這時(shí),我們需要在app中建立一個(gè)名為static 的文件夾。
3.2 如果我們要配置整個(gè)project下的靜態(tài)文件的話,執(zhí)行此步驟。
我們需要在整個(gè)project 中建立一個(gè) 名為static的文件夾
4 當(dāng)我們?cè)谀0逯袩o(wú)論是使用硬鏈接 /static/myexample.jpg 還是使用 static 標(biāo)簽
<img src='http://www.piao2010.com/bcjs/{% static 'myexample.jpg' %}' />
都會(huì)先訪問(wèn)app下的static/文件夾下的myexample.jpg 文件,若app下的static文件夾中沒(méi)有該文件,則訪問(wèn)project中的static/文件夾,查看是否有myexample.jpg文件,若有則返回,若沒(méi)有則去/var/www/static/中尋找。
但我要解決的問(wèn)題和這個(gè)并不太一樣,我在app下新建了一個(gè)static文件夾,在該static文件夾下又建了一個(gè)目錄linux2yolov3的目錄,專門存放圖片,本來(lái)如果是加載這里面的圖片的話可以用
<img src='http://www.piao2010.com/bcjs/{% static 'linux2yolov3/myexample.jpg' %}' />
但我需要的是動(dòng)態(tài)顯示圖片,也就是從app中的views文件中傳圖片名稱過(guò)來(lái)顯示,因此上述方法不可行。
解決的方法是
<img src='http://www.piao2010.com/bcjs/{% static ’linux2yolov3/’ %}{{result_img}}'>
其中{{result_img}}是通過(guò)app中view里面設(shè)置context傳過(guò)來(lái)的文件名稱。
補(bǔ)充知識(shí):Django下的templates 和 static靜態(tài)文件
如果Django頂層目錄中沒(méi)有templates的話,就自己新建一個(gè)Directory ,這個(gè)文件是存放html文件的
1)如果在views里面用render(request,'')引入的時(shí)候引入不了,去setting 里面檢查TEMPLATES下面
’DIRS’: [os.path.join(BASE_DIR, ’templates’)],路徑配置是否正確
2)靜態(tài)文件static:里面存放js文件,setting 里面需要配置
STATIC_URL = ’/static/’ #別名 STATICFILES_DIRS={ os.path.join(BASE_DIR, 'statics')}
以上這篇django配置app中的靜態(tài)文件步驟就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5動(dòng)態(tài)(可拖動(dòng)控件大小)布局控件QSplitter詳細(xì)使用方法與實(shí)例2. vue跳轉(zhuǎn)頁(yè)面常用的幾種方法匯總3. 父div高度不能自適應(yīng)子div高度的解決方案4. react拖拽組件react-sortable-hoc的使用5. CSS清除浮動(dòng)方法匯總6. 不要在HTML中濫用div7. js開(kāi)發(fā)中的頁(yè)面、屏幕、瀏覽器的位置原理(高度寬度)說(shuō)明講解(附圖)8. XML 非法字符(轉(zhuǎn)義字符)9. CSS3實(shí)例分享之多重背景的實(shí)現(xiàn)(Multiple backgrounds)10. ASP動(dòng)態(tài)include文件
