Django靜態(tài)資源URL STATIC_ROOT的配置方法
緣由
新手學(xué)習(xí) Django 當(dāng)配置好 HTML 頁面后,就需要使用一些靜態(tài)資源,如圖片,JS 文件,CSS 樣式等,但是 Django 里面使用這些資源并不是直接引用一下就好,還要配置路徑即 STATIC_URL 如果這個配置不好的話,請求這些靜態(tài)資源將返回 HTTP 404 。
經(jīng)驗傳授
1. 輸出 settings.py 文件里面的 STATIC_URL 到HTML頁面,看一下物理路徑指向了哪些,通常是不是跑出根目錄的。這里給個DEMO:
def home(request):
t = get_template("index.html")
html = t.render(Context({
"template_dir":settings.TEMPLATE_DIRS[0],
"title":"Home",
"static_dir":settings.STATIC_ROOT}))
return HttpResponse(html)
這樣訪問的HTML頁面就可以看到這些路徑了。
2. 配置 STATIC_ROOT 變量
STATIC_ROOT = os.path.join(os.path.dirname(__file__), '..', 'templates/content').replace('\\','/')
可能通過調(diào)整第二個和第三個參數(shù)來將路徑修改正確。(多調(diào)試)
3. 在 urls.py 文件中配置 urlpatterns 變量(主要看高亮這一行):
urlpatterns = patterns('',
url(r'^$', home),
url(r'^static/(?P<path>.*)$','django.views.static.serve',{'document_root':settings.STATIC_ROOT}),
)
4. 測試以上配置:
<head>
<meta charset="UTF-8"/>
<title>{{ title }} - Oger</title>
<script type="text/javascript" src="/static/scripts/jquery-1.11.0.min.js"></script>
</head>
或
<head>
<meta charset="UTF-8"/>
<title>{{ title }} - Oger</title>
{% load staticfiles %}
<script type="text/javascript" src="{% static 'scripts/jquery-1.11.0.min.js' %}"></script>
</head>
[/code]
這兩種用法都是可以的。
用 Django 開發(fā)Web站點還是很方便的。繼續(xù)學(xué)習(xí)中...
相關(guān)文章
python 與GO中操作slice,list的方式實例代碼
這篇文章主要介紹了python 與GO中操作slice,list的方式實例代碼的相關(guān)資料,需要的朋友可以參考下2017-03-03Python+Selenium+phantomjs實現(xiàn)網(wǎng)頁模擬登錄和截圖功能(windows環(huán)境)
Python是一種跨平臺的計算機(jī)程序設(shè)計語言,它可以運行在Windows、Mac和各種Linux/Unix系統(tǒng)上。這篇文章主要介紹了Python+Selenium+phantomjs實現(xiàn)網(wǎng)頁模擬登錄和截圖功能,需要的朋友可以參考下2019-12-12Python StringIO如何在內(nèi)存中讀寫str
這篇文章主要介紹了python StringIO如何在內(nèi)存中讀寫str,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-01-01