Django 靜態資源配置

2021-08-10 20:02:22 字數 1351 閱讀 4114

今天我們來配置一下python下django裡的靜態資源

開發環境即設debug=true 

static_url = '/static/'
3. 在模板中訪問可以有三種方式:直接硬編碼像/static/×××.jpg這樣,或是使用static標籤,如 

我常使用}×××.jpg 來寫靜態路徑的(必須使用requestcontext進行渲染,否則無法引用static_url的值)。 

下面情況無法訪問靜態資源

資源存放在project下的static目錄,沒有在settings.py中設定staticfiles_dirs為(os.path.join(base_dir, 「static」)

靜態資源的高階配置

不使用django.contrib.staticfiles模組時,可以利用django.views.static.serve提供靜態資源。用法簡單,只要在urls.py使用下面的**:

from django.conf.urls import url,include

from django.contrib import admin

from django.conf.urls.static import static

from django.conf import settings

urlpatterns = [

#。。。。。。

]+ static(settings.media_url,document_root=settings.media_root) #重點

static(prefix, view=serve, ××kwargs)會返回乙個url,該url會由django.views.static.serve進行響應。serve方法純粹使用檔案系統來搜尋資源檔案。static_url作為訪問url裡資源的字首,static_root必須是資源檔案的絕對檔案路徑。舉例如下:

static_url = '/static/'

staticfiles_dirs =(

os.path.join(base_dir,'static')

)

訪問時http://localhost:8000/statics/*.img。**會查詢statics資源字首,擷取後面的路徑如*.img再與static_root路徑拼接,進而訪問資源檔案。

應學會靈活使用static(prefix, view=serve, ××kwargs),上面使用了static_url和static_root,但要意識到只要引數正確,傳什麼都可以。這種靜態資源的使用方式簡單粗暴,即使不是開發環境也能適用哦。唯一缺點不適合商用。

Django 靜態資源配置和ajax(九)

瀏覽器訪問靜態資源時的路徑 static url static2 存放靜態資源的檔案路徑 注意 django查詢靜態檔案是惰性查詢,查詢到第乙個,就停止查詢了。下面以登入為例子介紹ajax在django中是如何使用的 django使用ajax時需要先在上面建立的static檔案目錄下新建個js目錄,...

SpringBoot靜態資源配置

1 springboot靜態資源配置,使用 webmvcautoconfiguration配置各種屬性。springboot 預設將 所有訪問對映到以下路徑 classpath static classpath public classpath resources classpath meta in...

spring靜態資源配置

優雅rest風格的資源url不希望帶 html 或 do 等字尾.由於早期的spring mvc不能很好地處理靜態資源,所以在web.xml中配置dispatcherservlet的請求對映,往往使用 do xhtml等方式。這就決定了請求url必須是乙個帶字尾的url,而無法採用真正的rest風格...