配置靜態檔案的兩種方式:
1 配置單獨app下的靜態檔案,比如某個app下的單獨的。
2 配置整個project下的靜態檔案,適用於那些和單獨app關聯不大的檔案,比如jquery bootstrap 等等
配置步驟:
首先,我們需要確認在settings.py檔案中的installed_apps變數中存在 django.contrib.staticfiles
installed_apps = (
'django.contrib.admin',
'django.contrib.auth',
'django.con程式設計客棧trib.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靜態檔案搜尋路徑,還可以有第三kosqlgem選,第四選……
)3.1 如果我們要配置單獨app下的靜態檔案的話,執行此步驟。
這時,我們需要在app中建立乙個名為static 的資料夾。
3.2 如果我們要配置整個project下的靜態檔案的話,執行此步驟。
我們需要在整個project 中建立乙個 名為static的資料夾
4 當我們在模板中無論是使用硬鏈結 /static/myexample.jpg 還是使用 static 標籤
都會先訪問app下的static/資料夾下的myexample.jpg 檔案,若app下的static資料夾中沒有該檔案,則訪問project中的static/資料夾,檢視是否有myexample.jpg檔案,若有則返回,若沒有則去/var/www/static/中尋找。
但我要解決的問題和這個並不太一樣,我在app下新建了乙個static資料夾,在該static資料夾下又建了乙個目錄linux2yolov3的目錄,專門存放,本來如果是載入這裡面的的話可以用
但我需要的是動態顯示,也就是從app中的views檔案中傳名稱過來顯示,因此上述方法不可行。
解決的方法是
其中}是通過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=
本文標題: django配置app中的靜態檔案步驟
本文位址:
django中靜態檔案配置static的方法
環境 白話我們可以使用template 設定我們的網頁,同時,乙個完美的網頁需要css,js,image 等靜態檔案的支援。django中配置方式貌似有不少總,因為很多相關的部落格寫的方式並不一致,當然這可能是django 的版本不同導致的。當我們在乙個專案下建立乙個app後,我們就需要為該app下...
django基礎 django中的app應用
urlpatterns path lw2 views.lw2 先設定子路由和乙個實現登入功能頁面 login.html 使用者名稱 密碼 通過request.post.get 方法可以返回使用者登入時的資訊,根據資訊來判斷和進行下一事件。如果登入資訊與資料庫中資訊不相匹配,則重新返回新的登入頁面。此...
Django靜態檔案配置
最近用django開發專案,發現django的靜態檔案 js,css和img等 配置比較麻煩,開發環境和生產環境的配置還不一樣,這裡記錄一下,作為備忘。我當前使用的版本是django v1.4.3。吐槽 django的版本不相容是個大問題,網上搜尋相關問題時,解決方案到是一大推,但是均沒有標註版本,...