Django使用HttpResponse返回图片并显示的方法


Posted in Python onMay 22, 2018

做了一个关于Django的小案例,想要在网页中显示图片,直接在img标签的src属性写图片的路径是不能显示的,查询资料发现在Django中使用图片这类的资源相当繁琐需要进行一定D的配置,摸索了一会没有整明白,想到了写Java时使用文件流返回图片,于是想到使用该种方式来显示图片。

使用实例如下:

views.py

def my_image(request,news_id): 
  d = path.dirname(__file__) 
  #parent_path = path.dirname(d) 
  print("d="+str(d)) 
  imagepath = path.join(d,"static/show/wordimage/"+str(news_id)+".png") 
  print("imagepath="+str(imagepath)) 
  image_data = open(imagepath,"rb").read() 
  return HttpResponse(image_data,content_type="image/png") #注意旧版的资料使用mimetype,现在已经改为content_type

urls.py

urlpatterns = [ 
  url(r'^index/$', views.index,name="index"), 
  url(r'^search/$', views.search,name="search"), 
  url(r'^science/(?P<news_id>.+)/$', views.science,name="science"), 
  <strong>url(r'^image/(?P<news_id>.+)/$',views.my_image,name="image"),</strong> 
]

temlate:

<img src="{% url 'show:image' param.id %}" alt="{{param.id}}"/>

以上这篇Django使用HttpResponse返回图片并显示的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python 调用VC++的动态链接库(DLL)
Sep 06 Python
Python中一些自然语言工具的使用的入门教程
Apr 13 Python
Python中处理字符串的相关的len()方法的使用简介
May 19 Python
python中的编码知识整理汇总
Jan 26 Python
在Python的Flask框架中构建Web表单的教程
Jun 04 Python
Python3实现的简单验证码识别功能示例
May 02 Python
使用pandas模块读取csv文件和excel表格,并用matplotlib画图的方法
Jun 22 Python
Django使用中间键实现csrf认证详解
Jul 22 Python
全面了解django的缓存机制及使用方法
Jul 22 Python
Python开发之基于模板匹配的信用卡数字识别功能
Jan 13 Python
Python Excel vlookup函数实现过程解析
Jun 22 Python
pandas求平均数和中位数的方法实例
Aug 04 Python
python实现最长公共子序列
May 22 #Python
使用python存储网页上的图片实例
May 22 #Python
python3模块smtplib实现发送邮件功能
May 22 #Python
Python3.x爬虫下载网页图片的实例讲解
May 22 #Python
python3使用smtplib实现发送邮件功能
May 22 #Python
python抓取网站的图片并下载到本地的方法
May 22 #Python
Python3实现的字典、列表和json对象互转功能示例
May 22 #Python
You might like
计数器详细设计
2006/10/09 PHP
linux下为php添加curl扩展的方法
2011/07/29 PHP
数据库中排序的对比及使用条件详解
2012/02/23 PHP
php表单加入Token防止重复提交的方法分析
2016/10/10 PHP
javascript 面向对象继承
2009/11/26 Javascript
JQuery通过Ajax提交表单并返回结果
2011/07/31 Javascript
js匿名函数的调用示例(形式多种多样)
2014/08/20 Javascript
js解决select下拉选不中问题
2014/10/14 Javascript
jquery实现的代替传统checkbox样式插件
2015/06/19 Javascript
jQuery操作复选框(CheckBox)的取值赋值实现代码
2017/01/10 Javascript
JS查找字符串中出现最多的字符及个数统计
2017/02/04 Javascript
js下拉菜单生成器dropMenu使用方法详解
2017/08/01 Javascript
vue滚动轴插件better-scroll使用详解
2017/10/17 Javascript
微信小程序实现tab和swiper切换结合效果
2020/07/17 Javascript
Node.js上传文件功能之服务端如何获取文件上传进度
2018/02/05 Javascript
剖析Angular Component的源码示例
2018/03/23 Javascript
js中的深浅拷贝问题简析
2019/05/10 Javascript
Vue数据驱动表单渲染,轻松搞定form表单
2019/07/19 Javascript
解决在Vue中使用axios用form表单出现的问题
2019/10/30 Javascript
关于引入vue.js 文件的知识点总结
2020/01/28 Javascript
基于Python 的进程管理工具supervisor使用指南
2016/09/18 Python
python爬取个性签名的方法
2018/06/17 Python
python 列表推导式使用详解
2019/08/29 Python
详解Django CAS 解决方案
2019/10/30 Python
Python插入Elasticsearch操作方法解析
2020/01/19 Python
Python文件操作模拟用户登陆代码实例
2020/06/09 Python
pytorch cuda上tensor的定义 以及减少cpu的操作详解
2020/06/23 Python
英国奢华护肤、美容和Spa品牌:Temple Spa
2019/11/02 全球购物
临床医学专业毕业生的自我评价
2013/10/17 职场文书
个人整改措施书面材料
2014/10/24 职场文书
男方婚礼答谢词
2015/01/20 职场文书
个人工作年终总结
2015/03/09 职场文书
幼儿园教师求职信
2015/03/20 职场文书
go mod 安装依赖 unkown revision问题的解决方案
2021/05/06 Golang
CKAD认证中部署k8s并配置Calico插件
2022/03/31 Servers
Win Server2016远程桌面如何允许多用户同时登录
2022/06/10 Servers