解决django的template中如果无法引用MEDIA_URL问题


Posted in Python onApril 07, 2020

配置如下

TEMPLATES = [

下面

'context_processors': [

中添加

'django.core.context_processors.media',

会把MEDIA_URL 配置在template中

这样在template下面 就可以引用MEDIA_URL了

补充知识:在django中使用 MEDIA_URL 和 MEDIA_ROOT

在django上传图片前端使用动态的配置方法

MEDIA_ROOT 代表着 要上传的路径会和你在models中写的上传的路径进行拼节形成最终文件上传的路径 

MEDIA_URL主要就是映射了 在前端使用media_url当你的media_root发生改变的时候不用去更改前端模板中的内容

前端模板中的写法

后面是从数据库中 查询出来的 上传文件的地址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 中添加一个上下文环境 'django.core.context_processors.media', 这个会

自动的把MEDIA_URL 注册到前端的模板中的 没有这个上下文环境 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问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用Python装饰器在Django框架下去除冗余代码的教程
Apr 16 Python
Python字符串拼接、截取及替换方法总结分析
Apr 13 Python
利用python模拟实现POST请求提交图片的方法
Jul 25 Python
Python 闭包的使用方法
Sep 07 Python
利用python库在局域网内传输文件的方法
Jun 04 Python
对python中的iter()函数与next()函数详解
Oct 18 Python
Python实现多态、协议和鸭子类型的代码详解
May 05 Python
python pillow模块使用方法详解
Aug 30 Python
python实现简单成绩录入系统
Sep 19 Python
python能自学吗
Jun 18 Python
Django如何创作一个简单的最小程序
May 12 Python
Python Pandas pandas.read_sql_query函数实例用法分析
Jun 21 Python
Django {{ MEDIA_URL }}无法显示图片的解决方式
Apr 07 #Python
Python Opencv中用compareHist函数进行直方图比较对比图片
Apr 07 #Python
python opencv实现图片缺陷检测(讲解直方图以及相关系数对比法)
Apr 07 #Python
解决django无法访问本地static文件(js,css,img)网页里js,cs都加载不了
Apr 07 #Python
Pytest框架之fixture的详细使用教程
Apr 07 #Python
4行Python代码生成图像验证码(2种)
Apr 07 #Python
Django media static外部访问Django中的图片设置教程
Apr 07 #Python
You might like
PHP的历史和优缺点
2006/10/09 PHP
php从数组中随机抽取一些元素的代码
2012/11/05 PHP
解析php 版获取重定向后的地址(代码)
2013/06/26 PHP
php中动态修改ini配置
2014/10/14 PHP
PHP+redis实现的悲观锁机制示例
2018/06/12 PHP
使用JavaScript switch case 另类写法
2010/03/14 Javascript
10个实用的脚本代码工具
2010/05/04 Javascript
Javascript实现的鼠标经过时播放声音
2010/05/18 Javascript
jQuery中:has选择器用法实例
2014/12/30 Javascript
javascript html5移动端轻松实现文件上传
2020/03/27 Javascript
javascript的列表切换【实现代码】
2016/05/03 Javascript
使用jquery.form.js实现图片上传的方法
2016/05/05 Javascript
vue-cli单页应用改成多页应用配置详解
2017/07/14 Javascript
bootstrap Table插件使用demo
2017/08/07 Javascript
Vue header组件开发详解
2018/01/26 Javascript
详解微信小程序缓存--缓存时效性
2019/05/02 Javascript
layui输入框中只允许输入整数的实现方法
2019/09/18 Javascript
解决vue数据不实时更新的问题(数据更改了,但数据不实时更新)
2020/10/27 Javascript
[04:49]2014DOTA2国际邀请赛 Newbee顺利挺进总决赛 ImbaTV独家专访
2014/07/19 DOTA
python命令行参数解析OptionParser类用法实例
2014/10/09 Python
Python编程实现数学运算求一元二次方程的实根算法示例
2017/04/02 Python
Python读取word文本操作详解
2018/01/22 Python
解决pycharm的Python console不能调试当前程序的问题
2019/01/20 Python
用Anaconda安装本地python包的方法及路径问题(图文)
2019/07/16 Python
python requests证书问题解决
2019/09/05 Python
opencv python在视屏上截图功能的实现
2020/03/05 Python
Python run()函数和start()函数的比较和差别介绍
2020/05/03 Python
查看keras的默认backend实现方式
2020/06/19 Python
迪卡侬英国官网:Decathlon英国
2017/04/08 全球购物
Tod’s英国官方网站:意大利奢华手工制作手袋和鞋履
2019/03/15 全球购物
保安员岗位职责
2013/11/17 职场文书
高中英语教学反思
2014/02/04 职场文书
主题婚礼策划方案
2014/02/10 职场文书
教师工作证明范本
2015/06/12 职场文书
2015年六年级班主任工作总结
2015/10/15 职场文书
mysql 8.0.24 安装配置方法图文教程
2021/05/12 MySQL