欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Django 使用easy_thumbnails壓縮上傳的圖片方法

 更新時(shí)間:2019年07月26日 09:59:53   作者:嵐漾憶雨  
今天小編就為大家分享一篇Django 使用easy_thumbnails壓縮上傳的圖片方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

easy_thumbnails:A powerful, yet easy to implement thumbnailing application for Django 1.4+

安裝

pip install easy_thumbanils

在你的項(xiàng)目中配置

setting.py INSTALLED_APPS中添加 ‘easy_thumbanils'

如果Django1.7及以上,運(yùn)行python manage.py migrate easy_thumbnails

否則,運(yùn)行python manage.py syncdb

在Django中壓縮

setting.py

首先,setting中添加

THUMBNAIL_ALIASES = {
 '': {
  'avatar': {'size': (200, 200), 'crop': True},
 },
}

size控制要壓縮后的圖片大小

創(chuàng)建模型

eg:

models.py

from easy_thumbnails.fields import ThumbnailerImageField

class GoodsImage(models.Model):
 Img = ThumbnailerImageField(upload_to='images/',blank=True)

ThumbnailerImageField在數(shù)據(jù)庫(kù)中做的事相當(dāng)于models.ImageField,不同的是他會(huì)告訴esay_thumbnails這是一個(gè)要被壓縮的圖片域。(個(gè)人推測(cè))

獲取縮略圖路徑

兩種,一是在模板中,二在視圖中

模板:

views.py

from models import GoodsImage
def test(request):
 goods = GoodsMessage.objects.all().first() # 查到一個(gè)圖片
 return render(request,'templates.html',{'img':goods}) # 使用模板

templates.html

{% load thumbnail %} {# 裝載easy_thumbnail #}
<img src="/media/{{ img.Img }}"> {# 原圖 #}
<img src="/media/{{ img.Img.avatar.url }}"> {# 壓縮圖 #}

視圖

views.py

from easy_thumbnails.files import get_thumbnailer
from models import GoodsImage
def test2(request):
 goods = GoodsImage.objects.all().first()
 path = get_thumbnailer(goods.Img)
 print(path) # 注意,這里查到的是url編碼的圖片地址
 return HttpResponse(path)

第二種方法,直接查找:

goods = GoodsImage.objects.all().first()
goods.Img # 原圖地址
goods.Img['avatar'] # 縮略圖地址
goods.Img['avatar'].url # 經(jīng)url編碼后的縮略圖地址
# avatar是你在setting.py中的縮略圖尺寸名

根據(jù)我的觀察,只有當(dāng)?shù)谝淮问褂?GoodsImage.object.*()這種查詢(xún)的時(shí)候,才會(huì)生成縮略圖,并非在保存原圖時(shí)就生成了。

此外,使用時(shí)候發(fā)現(xiàn)當(dāng)圖片表一條記錄被刪除后,thumbanils的數(shù)據(jù)表記錄不會(huì)刪除,不過(guò)在使用中未發(fā)現(xiàn)異常

以上這篇Django 使用easy_thumbnails壓縮上傳的圖片方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • python貪吃蛇游戲代碼

    python貪吃蛇游戲代碼

    這篇文章主要為大家詳細(xì)介紹了python貪吃蛇游戲代碼,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-01-01
  • python 實(shí)現(xiàn)二叉搜索樹(shù)的四種方法

    python 實(shí)現(xiàn)二叉搜索樹(shù)的四種方法

    本文主要介紹了python 實(shí)現(xiàn)二叉搜索樹(shù)的四種方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-04-04
  • matplotlib共享坐標(biāo)軸的實(shí)現(xiàn)(X或Y坐標(biāo)軸)

    matplotlib共享坐標(biāo)軸的實(shí)現(xiàn)(X或Y坐標(biāo)軸)

    在作圖的過(guò)程中,我們經(jīng)常會(huì)遇到子圖共用坐標(biāo)軸的情況,或是共用橫軸標(biāo)軸,也可能是縱坐標(biāo)軸。本文就介紹了matplotlib共享坐標(biāo)軸,感興趣的可以了解一下
    2021-05-05
  • Django框架模板介紹

    Django框架模板介紹

    今天小編就為大家分享一篇關(guān)于Django框架模板介紹,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-01-01
  • 對(duì)Xpath 獲取子標(biāo)簽下所有文本的方法詳解

    對(duì)Xpath 獲取子標(biāo)簽下所有文本的方法詳解

    今天小編就為大家分享一篇對(duì)Xpath 獲取子標(biāo)簽下所有文本的方法詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-01-01
  • 詳解Python安裝scrapy的正確姿勢(shì)

    詳解Python安裝scrapy的正確姿勢(shì)

    Scrapy是一個(gè)為了爬取網(wǎng)站數(shù)據(jù)提取結(jié)構(gòu)性數(shù)據(jù)而編寫(xiě)的應(yīng)用框架。這篇文章主要介紹了Python安裝scrapy的正確姿勢(shì),非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-06-06
  • Python 機(jī)器學(xué)習(xí)之線(xiàn)性回歸詳解分析

    Python 機(jī)器學(xué)習(xí)之線(xiàn)性回歸詳解分析

    回歸是監(jiān)督學(xué)習(xí)的一個(gè)重要問(wèn)題,回歸用于預(yù)測(cè)輸入變量和輸出變量之間的關(guān)系,特別是當(dāng)輸入變量的值發(fā)生變化時(shí),輸出變量的值也隨之發(fā)生變化?;貧w模型正是表示從輸入變量到輸出變量之間映射的函數(shù)
    2021-11-11
  • 用Python畫(huà)小女孩放風(fēng)箏的示例

    用Python畫(huà)小女孩放風(fēng)箏的示例

    今天小編就為大家分享一篇用Python畫(huà)小女孩放風(fēng)箏的示例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-11-11
  • 讓Django支持Sql Server作后端數(shù)據(jù)庫(kù)的方法

    讓Django支持Sql Server作后端數(shù)據(jù)庫(kù)的方法

    今天小編就為大家分享一篇讓Django支持Sql Server作后端數(shù)據(jù)庫(kù)的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-05-05
  • Python?selenium?get_cookies獲取cookie不全的解決方案

    Python?selenium?get_cookies獲取cookie不全的解決方案

    之前使用爬蟲(chóng)時(shí)最讓我頭疼的就是cookie失效的問(wèn)題了,下面這篇文章主要給大家介紹了關(guān)于Python?selenium?get_cookies獲取cookie不全的解決方案,需要的朋友可以參考下
    2022-10-10

最新評(píng)論