Django Rest Framework简单缩略图

dvt*_*tan 4 django django-rest-framework easy-thumbnails

使用普通的ImageField,可以简单地序列化URL image = serializers.ImageField().使用简易缩略图时应该是什么样子?

到目前为止,我只找到了一个获取URL的函数:Django easy_thumbnails访问图像URL 在序列化程序中使用它需要一个SerializerMethodField,这是一个令人不满意的解决方案.我正在寻找一种尽可能高效/高效的解决方案,并且在一条线上.

ils*_*005 6

最佳解决方案可能是子类化serializers.ImageField()并使用您在to_representation方法中找到的代码(自定义字段的文档).您的字段可能如下所示:

from easy_thumbnails.templatetags.thumbnail import thumbnail_url

class ThumbnailSerializer(serializers.ImageField):

    def to_representation(self, instance):
        return thumbnail_url(instance, 'small')
Run Code Online (Sandbox Code Playgroud)