获取带有对象 ID 的完整 URL 图像 - Django Rest Framework



我在Django Rest框架中编写了一个关于配置文件的序列化程序Avatar Image但我想获得完整的URL图像而不是ID。

我的序列化程序(返回profile_pic_url为 ID(:

class ProfileDetailSerializer(ModelSerializer):
    profile_pic_url = SerializerMethodField()
    class Meta:
        model = Profile
        fields = [
            'profile_pic_url',
        ]
    def get_profile_pic_url(self, obj):
        request = self.context.get('request')
        profile_pic_url = obj.profile_pic_url.image
        return request.build_absolute_uri(profile_pic_url)

此代码返回以下问题:

'ImageFieldFile' object has no attribute 'find'

您需要

提供图片网址build_absolute_uri但不需要ImageField本身:

return request.build_absolute_uri(profile_pic_url.url)

最新更新