Как получить контур поля изображения в моделях?
С новым годом и здравствуйте, у меня возникла проблема с изменением размера изображений в django. Мне нужно найти способ получить путь к Imagefield из модели во время загрузки изображений, как это сделать? Я написал функцию, которая меняет путь загрузки для Imagefield, я хочу получить url к этому файлу и вставить его в генератор imagekit для изменения размера. Это func для изменения пути загрузки для Imagefield
def get_file_pathM(instance, filename):
extension = filename.split('.')[-1]
new_name = 'new_name'
filename = "%s.%s" % (new_name, extension)
print('geeeeeeeeeeeeeeeeet', os.path.join('photos/project_photo/%y/%m/%d'))
date_now = date.today().strftime("%Y/%m/%d").split('/')
path = 'photos/project_photo/{}/{}/{}'.format(date_now[0], date_now[1], date_now[2])
return os.path.join(path, filename)
Вот мой класс ImageSpec для изменения размера
class Thumb(ImageSpec):
processors = [ResizeToFill(100, 50)]
format = 'JPEG'
options = {'quality': 60}
photo = models.ImageField(upload_to=get_file_pathM, verbose_name='Фото', blank=True, null=True)
source_file = open('here should be an url to photo','rb')
image_generator = Thumb(source=source_file)
result = image_generator.generate()
dest = open('media/photos/project_photo/2022/01/03/avtolider_new.jpg', 'wb')
dest.write(result.read())
dest.close()
И еще вопрос, в документации imagekit сказано, что можно использовать Imagefield как источник в image_generator без использования open, но это почему-то не работает и выдает ошибку, типа Imagefiled не может открыть или закрыть файл.