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模拟登陆Tom邮箱示例分享
Jan 13 Python
Python实现将n个点均匀地分布在球面上的方法
Mar 12 Python
深入理解Python中命名空间的查找规则LEGB
Aug 06 Python
教你用一行Python代码实现并行任务(附代码)
Feb 02 Python
Python3+OpenCV2实现图像的几何变换(平移、镜像、缩放、旋转、仿射)
May 13 Python
Python列表切片常用操作实例解析
Dec 16 Python
python数据预处理方式 :数据降维
Feb 24 Python
python def 定义函数,调用函数方式
Jun 02 Python
Django crontab定时任务模块操作方法解析
Sep 10 Python
基于Python组装jmx并调用JMeter实现压力测试
Nov 03 Python
pycharm 复制代码出现空格的解决方式
Jan 15 Python
Python的轻量级ORM框架peewee使用教程
Feb 05 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与已存在的Java应用程序集成
2006/10/09 PHP
PHP运行时强制显示出错信息的代码
2011/04/20 PHP
在smarty模板中使用PHP函数的方法
2011/04/23 PHP
php 阴历-农历-转换类代码
2012/01/16 PHP
php共享内存段示例分享
2014/01/20 PHP
php中通过DirectoryIterator删除整个目录的方法
2015/03/13 PHP
新浪微博OAuth认证和储存的主要过程详解
2015/03/27 PHP
javascript setTimeout和setInterval计时的区别详解
2013/06/21 Javascript
JavaScript面试题大全(推荐)
2016/09/22 Javascript
jquery实现图片切换代码
2016/10/13 Javascript
实例解析js中try、catch、finally的执行规则
2017/02/24 Javascript
js删除数组中的元素delete和splice的区别详解
2018/02/03 Javascript
vue中手机号,邮箱正则验证以及60s发送验证码的实例
2018/03/16 Javascript
Node.js利用console输出日志文件的方法示例
2018/04/27 Javascript
Nginx设置为Node.js的前端服务器方法总结
2019/03/27 Javascript
微信小程序开发(三):返回上一级页面并刷新操作示例【页面栈】
2020/06/01 Javascript
[01:55]TI9显影之尘系列 - Evil Geniuses
2019/08/22 DOTA
使用Python编写一个简单的tic-tac-toe游戏的教程
2015/04/16 Python
使用Python编写一个在Linux下实现截图分享的脚本的教程
2015/04/24 Python
Python数据结构与算法之完全树与最小堆实例
2017/12/13 Python
Python实现的从右到左字符串替换方法示例
2018/07/06 Python
python利用ffmpeg进行录制屏幕的方法
2019/01/10 Python
python 内置函数汇总详解
2019/09/16 Python
python对象销毁实例(垃圾回收)
2020/01/16 Python
Windows上安装tensorflow  详细教程(图文详解)
2020/02/04 Python
python3.5的包存放的具体路径
2020/08/16 Python
驴妈妈旅游网:中国新型的B2C旅游电子商务网站
2016/08/16 全球购物
工业设计专业推荐信
2013/10/29 职场文书
门前三包责任书
2014/04/15 职场文书
学雷锋月活动总结
2014/04/25 职场文书
专题组织生活会方案
2014/06/15 职场文书
2019邀请函格式及范文
2019/05/20 职场文书
HTML5中 rem适配方案与 viewport 适配问题详解
2021/04/27 HTML / CSS
golang中的并发和并行
2021/05/08 Golang
JavaScript 与 TypeScript之间的联系
2021/11/27 Javascript
使用vue判断当前环境是安卓还是IOS
2022/04/12 Vue.js