由于博客园不支持markdown,推荐下面的url访问
原创url: https://blog.csdn.net/weixin_42495873/article/details/89440437
- django把爬取的图片url放入到imageField字段中,通过序列化返回该字段数据会默认带上访问该接口的url,导致图片不显示,其实是序列化器帮你添加的

```python
def get_serializer_context(self):
return {
‘request‘: self.request,
‘format‘: self.format_kwarg,
‘view‘: self
}
```
- 该方法是GenericAPIView类中的方法,继承它的类都会出现(ListAPIView,RetrieveAPIView...等等),返回imageFiled字段会前缀本机域名,在类中重写一下该方法就Ok了.
```python
# 去掉self.request可以让图片没有本地域名的前缀
def get_serializer_context(self):
"""
Extra context provided to the serializer class.
"""
return {
‘format‘: self.format_kwarg,
‘view‘: self
}
```

- OK,显示正常,带域名的结果是在view中对模型类序列化的,DRF在序列化图片的时候 会检查上下文有没有request,如果有,就给图片加上域名
DRF图片路径问题的解决方法,网上爬取的图片放到ImageFiled自动带上域名
原文:https://www.cnblogs.com/dncey/p/11975949.html