Можно ли передать дополнительные аргументы или kwargs в модели photo_1 -> upload_to? Я хочу передать дополнительные данные (размер) для подготовки собственного имени файла. Я пробовал
def upload_to_id_image(self, filename, size=""):
fname = filename.split('/')[-1]
return f'thumbs/{fname}'
photo_1 = ProcessedImageField(
null=True, blank=True,
processors=[Thumbnail(192)],
options={'quality': 85},
upload_to=upload_to_id_image(size="192")
)
, но, похоже, не работает
вся модель:
class Photo(AddedUpdatedModel):
name = models.CharField(max_length=128, null=True, blank=True)
file = ThumbnailerImageField(upload_to='temp/')
photo_type = models.ForeignKey(PhotoType, on_delete=models.PROTECT, null=True, blank=True, default=None)
def upload_to_id_image(self, filename):
fname = filename.split('/')[-1]
return f'thumbs/{fname}'
photo_1 = ProcessedImageField(
null=True, blank=True,
processors=[Thumbnail(192)],
options={'quality': 85},
upload_to=upload_to_id_image
)
def __str__(self):
return self.name
def save(self, *args, **kwargs):
if not self.photo_1:
self.photo_1 = self.file.file
super().save(*args, **kwargs)
Я ищу решение, чтобы передать размер в модели выше