這篇文章主要講解了“為什么django的template中無法引用MEDIA_URL”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“為什么django的template中無法引用MEDIA_URL”吧!
配置如下
TEMPLATES = [
下面
'context_processors': [
中添加
'django.core.context_processors.media',
會把MEDIA_URL 配置在template中
這樣在template下面 就可以引用MEDIA_URL了
補充知識:在django中使用 MEDIA_URL 和 MEDIA_ROOT
在django上傳圖片前端使用動態(tài)的配置方法
MEDIA_ROOT 代表著 要上傳的路徑會和你在models中寫的上傳的路徑進行拼節(jié)形成最終文件上傳的路徑
MEDIA_URL主要就是映射了 在前端使用media_url當你的media_root發(fā)生改變的時候不用去更改前端模板中的內容
前端模板中的寫法
后面是從數(shù)據(jù)庫中 查詢出來的 上傳文件的地址url
"{{ MEDIA_URL }}{{ course_org.image }}"
前端生成的路徑
"/media/org/2017/07/qhdx-logo.png"/
要想正常的顯示圖片 還需要下面幾步:
1 在settings 中配置路徑
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
2 在TEMPLATES 中添加一個上下文環(huán)境 'django.core.context_processors.media', 這個會
自動的把MEDIA_URL 注冊到前端的模板中的 沒有這個上下文環(huán)境 MEDIA_URL在前端是沒有顯示的
TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [os.path.join(BASE_DIR, 'templates')] , 'APP_DIRS': True, 'OPTIONS': { 'context_processors': [ 'django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages', 'django.core.context_processors.media', ], }, },
3 在url中配置media請求的url
首先需要導入下面的庫 和在settings 中配置的 MEDIA_ROOT上傳路徑
from django.views.static import serve
from MxOnline.settings import MEDIA_ROOT
配置url 固定的 里面的內容不能改的
url(r'media/(?P<path>.*)$', serve, {'document_root': MEDIA_ROOT}),
感謝各位的閱讀,以上就是“為什么django的template中無法引用MEDIA_URL”的內容了,經(jīng)過本文的學習后,相信大家對為什么django的template中無法引用MEDIA_URL這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯(lián)成都網(wǎng)站設計公司,小編將為大家推送更多相關知識點的文章,歡迎關注!
另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。
文章題目:為什么django的template中無法引用MEDIA_URL-創(chuàng)新互聯(lián)
鏈接URL:http://aaarwkj.com/article30/dopjso.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名、建站公司、網(wǎng)站內鏈、軟件開發(fā)、微信小程序、網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內容