Python 应为字符串或缓冲区

Python 应为字符串或缓冲区,python,django,django-rest-framework,Python,Django,Django Rest Framework,我正在尝试从我的模型中获取相关的图像URL class DetailSerializer(serializers.ModelSerializer): image = serializers.SerializerMethodField("get_related_image_url") etc def get_related_image_url(self, obj): request = self.context.get('re

我正在尝试从我的模型中获取相关的图像URL

class DetailSerializer(serializers.ModelSerializer): 
      image = serializers.SerializerMethodField("get_related_image_url")       
      etc

    def get_related_image_url(self, obj):  

        request = self.context.get('request', None)        
        print(request.build_absolute_uri(obj.image())) 
错误:

应为字符串或缓冲区

/Users/user/Documents/workspace/demo/django-env/lib/python2.7/site-packages/django/http/request.py in build_absolute_uri
        """
        Builds an absolute URI from the location and the variables available in
        this request. If no location is specified, the absolute URI is built on
        ``request.get_full_path()``.
        """
        if not location:
            location = self.get_full_path()
        if not absolute_http_url_re.match(location): ...
            current_uri = '%s://%s%s' % ('https' if self.is_secure() else 'http',
                                         self.get_host(), self.path)
            location = urljoin(current_uri, location)
        return iri_to_uri(location)
    def _is_secure(self):   

为什么会出现此错误?

obj.image()
似乎正在返回非字符串的内容。

不知道。什么是obj?
obj.image()DRF@DanielRosemanimage()从my Model返回images/a8206638528a.png,但它不会以字符串形式返回,否则不会出现该错误。请给出实际方法的代码。@DanielRoseman你知道你是对的。它正在重新调整json!!!!!!