django配置app中的靜態文件步驟
配置靜態文件的兩種方式:
1 配置單獨app下的靜態文件,比如某個app下的單獨的圖片。
2 配置整個project下的靜態文件,適用于那些和單獨app關聯不大的文件,比如jquery bootstrap 等等
配置步驟:
首先,我們需要確認在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 如果我們要配置單獨app下的靜態文件的話,執行此步驟。
在settings.py文件中定義 STATIC_URL 變量。
STATIC_URL = ’/static/’
2.2 如果我們要配置整個project下的靜態文件的話,執行此步驟。
在settings.py文件中定義 STATICFILES_DIRS 變量
STATICFILES_DIRS = ( os.path.join(BASE_DIR, 'static'), # 首選project靜態文件搜尋路徑 ’/var/www/static/’, # 第二選project靜態文件搜尋路徑,還可以有第三選,第四選…… )
3.1 如果我們要配置單獨app下的靜態文件的話,執行此步驟。
這時,我們需要在app中建立一個名為static 的文件夾。
3.2 如果我們要配置整個project下的靜態文件的話,執行此步驟。
我們需要在整個project 中建立一個 名為static的文件夾
4 當我們在模板中無論是使用硬鏈接 /static/myexample.jpg 還是使用 static 標簽
<img src='http://www.wxshucaidpc.com/bcjs/{% static 'myexample.jpg' %}' />
都會先訪問app下的static/文件夾下的myexample.jpg 文件,若app下的static文件夾中沒有該文件,則訪問project中的static/文件夾,查看是否有myexample.jpg文件,若有則返回,若沒有則去/var/www/static/中尋找。
但我要解決的問題和這個并不太一樣,我在app下新建了一個static文件夾,在該static文件夾下又建了一個目錄linux2yolov3的目錄,專門存放圖片,本來如果是加載這里面的圖片的話可以用
<img src='http://www.wxshucaidpc.com/bcjs/{% static 'linux2yolov3/myexample.jpg' %}' />
但我需要的是動態顯示圖片,也就是從app中的views文件中傳圖片名稱過來顯示,因此上述方法不可行。
解決的方法是
<img src='http://www.wxshucaidpc.com/bcjs/{% static ’linux2yolov3/’ %}{{result_img}}'>
其中{{result_img}}是通過app中view里面設置context傳過來的文件名稱。
補充知識:Django下的templates 和 static靜態文件
如果Django頂層目錄中沒有templates的話,就自己新建一個Directory ,這個文件是存放html文件的
1)如果在views里面用render(request,'')引入的時候引入不了,去setting 里面檢查TEMPLATES下面
’DIRS’: [os.path.join(BASE_DIR, ’templates’)],路徑配置是否正確
2)靜態文件static:里面存放js文件,setting 里面需要配置
STATIC_URL = ’/static/’ #別名 STATICFILES_DIRS={ os.path.join(BASE_DIR, 'statics')}
以上這篇django配置app中的靜態文件步驟就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。
相關文章:
1. React+umi+typeScript創建項目的過程2. Warning: require(): open_basedir restriction in effect,目錄配置open_basedir報錯問題分析3. php網絡安全中命令執行漏洞的產生及本質探究4. JSP數據交互實現過程解析5. ASP.NET Core 5.0中的Host.CreateDefaultBuilder執行過程解析6. 無線標記語言(WML)基礎之WMLScript 基礎第1/2頁7. php測試程序運行速度和頁面執行速度的代碼8. SharePoint Server 2019新特性介紹9. ASP調用WebService轉化成JSON數據,附json.min.asp10. 三個不常見的 HTML5 實用新特性簡介
