這篇文章主要講解了“為什么django的template中無(wú)法引用MEDIA_URL”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“為什么django的template中無(wú)法引用MEDIA_URL”吧!
瀍河ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書(shū)未來(lái)市場(chǎng)廣闊!成為創(chuàng)新互聯(lián)的ssl證書(shū)銷(xiāo)售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:13518219792(備注:SSL證書(shū)合作)期待與您的合作!配置如下
TEMPLATES = [
下面
'context_processors': [
中添加
'django.core.context_processors.media',
會(huì)把MEDIA_URL 配置在template中
這樣在template下面 就可以引用MEDIA_URL了
補(bǔ)充知識(shí):在django中使用 MEDIA_URL 和 MEDIA_ROOT
在django上傳圖片前端使用動(dòng)態(tài)的配置方法
MEDIA_ROOT 代表著 要上傳的路徑會(huì)和你在models中寫(xiě)的上傳的路徑進(jìn)行拼節(jié)形成最終文件上傳的路徑
MEDIA_URL主要就是映射了 在前端使用media_url當(dāng)你的media_root發(fā)生改變的時(shí)候不用去更改前端模板中的內(nèi)容
前端模板中的寫(xiě)法
后面是從數(shù)據(jù)庫(kù)中 查詢出來(lái)的 上傳文件的地址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 中添加一個(gè)上下文環(huán)境 'django.core.context_processors.media', 這個(gè)會(huì)
自動(dòng)的把MEDIA_URL 注冊(cè)到前端的模板中的 沒(méi)有這個(gè)上下文環(huán)境 MEDIA_URL在前端是沒(méi)有顯示的
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請(qǐng)求的url
首先需要導(dǎo)入下面的庫(kù) 和在settings 中配置的 MEDIA_ROOT上傳路徑
from django.views.static import serve
from MxOnline.settings import MEDIA_ROOT
配置url 固定的 里面的內(nèi)容不能改的
url(r'media/(?P
.*)$', serve, {'document_root': MEDIA_ROOT}),
感謝各位的閱讀,以上就是“為什么django的template中無(wú)法引用MEDIA_URL”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)為什么django的template中無(wú)法引用MEDIA_URL這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計(jì)公司,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。