from django.db import models
from PIL import Image
from io import BytesIO
from django.core.files.uploadedfile import InMemoryUploadedFile
import sys

# Create your models here.

class Modify(models.Model):
	img = models.ImageField()

	def save(self):
		#Opening the uploaded image
		im = Image.open(self.img)

		output = BytesIO()

		#Resize/modify the image
		im = im.resize( (100,100) )

		#after modifications, save it to the output
		im.save(output, format='JPEG', quality=100)
		output.seek(0)

		#change the imagefield value to be the newley modifed image value
		self.img = InMemoryUploadedFile(output,'ImageField', "%s.jpg" %self.img.name.split('.')[0], 'image/jpeg', sys.getsizeof(output), None)

		super(Modify,self).save()