首页 > 其他 > 详细

DRF图片路径问题的解决方法,网上爬取的图片放到ImageFiled自动带上域名

时间:2019-12-03 13:21:26      阅读:126      评论:0      收藏:0      [点我收藏+]

由于博客园不支持markdown,推荐下面的url访问

原创url: https://blog.csdn.net/weixin_42495873/article/details/89440437

- django把爬取的图片url放入到imageField字段中,通过序列化返回该字段数据会默认带上访问该接口的url,导致图片不显示,其实是序列化器帮你添加的
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190421214459266.png)
```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
}
```
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190421214224636.png)
- OK,显示正常,带域名的结果是在view中对模型类序列化的,DRF在序列化图片的时候 会检查上下文有没有request,如果有,就给图片加上域名

DRF图片路径问题的解决方法,网上爬取的图片放到ImageFiled自动带上域名

原文:https://www.cnblogs.com/dncey/p/11975949.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!