2016-11-10 5 views
0

Как найти высоту и ширину изображения, если наша модель определяется как следоватькак найти высоту и ширину изображения для FileField Джанго

class MModel: 
document = FileField() 
format_type = CharField() 

и изображение сохраняется в документе, то как мы можем найти высоту и ширину документа, если это изображение?

+1

Вы можете измените его на «ImageField» и используйте аргументы 'width_field' и' height_field'. – Selcuk

+0

Вы имели в виду ImageField (MModel.objects.all() [0]). Высота ?? –

ответ

4

Если файлы всегда будут изображения, изменение FileField к ImageField, как это:

def MyModel(models.Model): 
    height = models.IntegerField() 
    width = models.IntegerField() 
    document = models.ImageField(height_field='height', width_field='width') 

В противном случае, вам придется вручную рассчитать ширину и высоту изображения:

from django.core.files.images import get_image_dimensions 

obj = MModel.objects.get(pk=1) 
width, height = get_image_dimensions(obj.document.file)