介绍
本篇文章给大家分享的是有关怎么在Django中利用easy_thumbnails实现压缩上传图片,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
<强>在Django中压缩强>
设置。py
首先,设置中添加
THUMBNAIL_ALIASES =, { ,& # 39;& # 39;:,{ & # 39;才能化身# 39;:,{& # 39;大小# 39;:,(200,,200),& # 39;作物# 39;:,真正}, }, }
大小控制要压缩后的图片大小
<强>创建模型强>
,
模型。py
得到easy_thumbnails.fields import ThumbnailerImageField class GoodsImage (models.Model):=,,Img  ThumbnailerImageField (upload_to=& # 39;图像/& # 39;,空白=True)
ThumbnailerImageField在数据库中做的事相当于models.ImageField,不同的是他会告诉esay_thumbnails这是一个要被压缩的图片域。(个人推测)
获取缩略图路径
两种,一是在模板中,二在视图中
<强>模板:强>
视图。py
得到models import GoodsImage def 测试(请求):=,,goods  GoodsMessage.objects.all()中国当代(),#,查到一个图片 ,return 渲染(请求,& # 39;templates.html& # 39;, {& # 39; img # 39;:商品}),#,使用模板
模板。html
{%, load thumbnail %},{#,装载easy_thumbnail #} https://www.yisu.com/zixun/& lt; img  src="/媒体/{{img。Img}} ">{#原图#} {#压缩图#}
<强>视图强>
视图。py
得到easy_thumbnails.files import get_thumbnailer 得到models import  GoodsImage def test2(请求):=,,goods  GoodsImage.objects.all()中国当代()=,,path  get_thumbnailer (goods.Img) ,打印(路径)#,注意,这里查到的是url编码的图片地址 ,return HttpResponse(路径)
第二种方法,直接查找:
goods =, GoodsImage.objects.all()中国当代() goods.Img #,原图地址 goods.Img[& # 39;《阿凡达》# 39;],#,缩略图地址 goods.Img[& # 39;《阿凡达》# 39;].url #,经url编码后的缩略图地址 #,《阿凡达》是你在设置。py中的缩略图尺寸名
以上就是怎么在Django中利用easy_thumbnails实现压缩上传图片,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。