首页 > 代码库 > [django]media_url
[django]media_url
django将文件上传到media文件夹,想要在前端通过{{ MEDIA_URL }}显示出来时发现没用
settings.py中这样设置
1 MEDIA_URL = ‘/media/‘ 2 3 MEDIA_ROOT = os.path.join(BASE_DIR, ‘Media‘)
html中代码
1 <img src="{{ MEDIA_URL }}learndjango.jpg" alt="">
访问页面的时候审查元素发现并不加载MEDIA_URL,只有learndjango.jpg
解决方法:
setting.py中黄色设置
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‘, ‘BookStore.views.global_settings‘, ‘django.template.context_processors.media‘, ], }, }, ]
views.py中render_to_response时加
return render_to_response(‘index.htm‘, context_instance=RequestContext(request,locals()))
这样页面审查元素时会有settings.py中设置的media_url
但是还是显示不出图片
解决方法:
url中加这句
url(r‘^media/(?P<path>.*)$‘, ‘django.views.static.serve‘, {‘document_root‘: settings.MEDIA_ROOT})
概括:其实在html中不写{{ MEDIA_URL }}直接写/media/learndjango.jpg,然后加上上面的url就行了,但是media_url变了的话就会改动很多
[django]media_url
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。