Использую библиотку Pil
from django.db import models
from django.contrib.auth.models import (
BaseUserManager, AbstractBaseUser
)
from PIL import Image
class User(AbstractBaseUser):
logo = models.ImageField(upload_to='logo/', verbose_name="Логотип компании", null=True)
def save(self):
if not self.id and not self.logo:
return
super(User, self).save()
image = Image.open(self.logo)
image.thumbnail((250,150), Image.ANTIALIAS)
image.save(self.logo.path+'thumbnail_200_200_aa.jpg', 'JPEG', quality=75)
Выше я перезаписываю загруженное изображение, а мне нужно сделать в дополнение к оригиналу сделать еще две вариации imageresize и imagethumbnail.
Делается это все примерно так:
def get_image_resize(self):
image = Image.open(self.logo)
imageresize = image.resize((500,500), Image.ANTIALIAS)
imageresize.save('resize_500_500_aa.jpg', 'JPEG', quality=75)
#Как в шаблоне получить ссылку на сохраненное изображение?
def get_image_thumbnail(self):
image = Image.open(self.logo)
imagethumbnail = image.thumbnail((200,200), Image.ANTIALIAS)
imagethumbnail.save('thumbnail_200_200_aa.jpg', 'JPEG', quality=75)
#Как в шаблоне получить ссылку на сохраненное изображение?