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获取本机外网ip的方法
Apr 15 Python
解决Python网页爬虫之中文乱码问题
May 11 Python
Python计算一个给定时间点前一个月和后一个月第一天的方法
May 29 Python
python中计算一个列表中连续相同的元素个数方法
Jun 29 Python
python tkinter库实现气泡屏保和锁屏
Jul 29 Python
python中的&amp;&amp;及||的实现示例
Aug 07 Python
解决Pycharm的项目目录突然消失的问题
Jan 20 Python
TensorFlow MNIST手写数据集的实现方法
Feb 05 Python
pytorch实现MNIST手写体识别
Feb 14 Python
Python字典实现伪切片功能
Oct 28 Python
python 解决微分方程的操作(数值解法)
May 26 Python
pytorch Dropout过拟合的操作
May 27 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
php递归获取目录内文件(包含子目录)封装类分享
2013/12/25 PHP
php数组随机排序实现方法
2015/06/13 PHP
PHP实现Session入库/存入redis的方法
2017/05/04 PHP
PHP API接口必备之输出json格式数据示例代码
2017/06/27 PHP
表格 隔行换色升级版
2009/11/07 Javascript
jq选项卡鼠标延迟的插件实例
2013/05/13 Javascript
js之事件冒泡和事件捕获详细介绍
2013/10/28 Javascript
javascript的渐进增强与平稳退化浅谈
2013/11/12 Javascript
asm.js使用示例代码
2013/11/28 Javascript
用js+iframe形成页面的一种遮罩效果的具体实现
2013/12/31 Javascript
jQuery选择器源码解读(七):elementMatcher函数
2015/03/31 Javascript
Laydate时间组件在火狐浏览器下有多时间输入框时只能给第一个输入框赋值的解决方法
2016/08/18 Javascript
Javascript封装id、class与元素选择器方法示例
2017/03/13 Javascript
JQuery EasyUI的一些常用组件
2017/07/12 jQuery
vue学习之mintui picker选择器实现省市二级联动示例
2017/10/12 Javascript
打字效果动画的4种实现方法(超简单)
2017/10/18 Javascript
React-native桥接Android原生开发详解
2018/01/17 Javascript
详解nodejs http请求相关总结
2019/03/31 NodeJs
Vue对象赋值视图不更新问题及解决方法
2019/06/03 Javascript
详解微信小程序开发之formId使用(模板消息)
2019/08/27 Javascript
[52:09]2014 DOTA2华西杯精英邀请赛 5 25 NewBee VS DK第二场
2014/05/26 DOTA
[07:39]第一届亚洲邀请赛回顾视频
2017/02/14 DOTA
[46:20]DOTA2-DPC中国联赛 正赛 PSG.LGD vs LBZS BO3 第二场 1月22日
2021/03/11 DOTA
Python3.2中Print函数用法实例详解
2015/05/19 Python
python下调用pytesseract识别某网站验证码的实现方法
2016/06/06 Python
使用Python实现分别输出每个数组
2019/12/06 Python
Python实现随机生成任意数量车牌号
2020/01/21 Python
python将音频进行变速的操作方法
2020/04/08 Python
Pytorch数据拼接与拆分操作实现图解
2020/04/30 Python
python分布式爬虫中消息队列知识点详解
2020/11/26 Python
CSS3实现红包抖动效果
2020/12/23 HTML / CSS
继电保护工岗位职责
2014/01/05 职场文书
乔迁之喜主持词
2014/03/27 职场文书
关爱残疾人演讲稿
2014/05/24 职场文书
汽车维修专业自荐书
2014/05/26 职场文书
Ruby处理YAML和json数据
2022/04/18 Ruby