0

簡単なサムネイルを使用しています。元のファイルは正しく保存されていますが、サムネイルは重複したファイル拡張子で保存されています。

11.jpg
11.jpg.100x100_q85.jpg

サムネイルに次のような名前を付けたいと思います。

11.100x100_q85.jpg

私のモデルは次のようになります。

def image_filename(instance, filename):
    folder = 'posts/image'
    _, ext = os.path.splitext(filename)
    new_name = str(instance.id) + ext
    return os.path.join(folder, new_name)


class Post(models.Model):
    name = models.CharField(max_length=255, unique=True)
    image = ThumbnailerImageField(upload_to=image_filename, null=True, blank=True)

Django Rest Framework を使用しているので、この投稿に従ってシリアライザーを作成しました: Django easy-thumbnails serialize with Django Rest Framework

class ThumbnailSerializer(serializers.ImageField):
    def __init__(self, alias, *args, **kwargs):
        super().__init__(*args, **kwargs)
        self.read_only = True
        self.alias = alias

    def to_representation(self, value):
        if not value:
            return None

        url = thumbnail_url(value, self.alias)
        request = self.context.get('request', None)
        if request is not None:
            return request.build_absolute_uri(url)

        return url

サムネイルに正しい名前を付ける方法を知っている人はいますか?

ありがとう!

4

1 に答える 1