django将网络中的图片,保存成model中的ImageField的实例


Posted in Python onAugust 07, 2019

有这样的情形,django个人头像在model中是:

class UserProfile(AbstractUser):
 """
 用户
 """
 name = models.CharField(max_length=30, null=True, blank=True, verbose_name="姓名")
 image = models.ImageField(max_length=1000,upload_to='avatar/%Y/%m/', verbose_name=u'头像', null=True, blank=True)

正常情况下,需要客户端(app或者浏览器post上来图片,然后保存到image中)

例如:

image = request.data.get('image', None)
...
user.image=image
user.save()

但是,有这样的情况,如果是第三方,例如微博登录,前端通过微博接口获取到微博头像,post上来的就是头像的地址,https://xxx.xxx.jpg

这个时候如何通过图片url,保存到django的model中呢?

思路是,先通过url下载图片,然后保存

from django.core.files import File
from io import BytesIO
from urllib.request import urlopen
 
url = request.data.get('image', None)
r = urlopen(url)
io = BytesIO(r.read())
user.image.save("{}_{}.jpg".format(user.id,int(time.time())), File(io))

以上这篇django将网络中的图片,保存成model中的ImageField的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
讲解python参数和作用域的使用
Nov 01 Python
Python continue语句用法实例
Mar 11 Python
wxPython定时器wx.Timer简单应用实例
Jun 03 Python
python实现RSA加密(解密)算法
Feb 17 Python
django数据库migrate失败的解决方法解析
Feb 08 Python
python3实现磁盘空间监控
Jun 21 Python
python从子线程中获得返回值的方法
Jan 30 Python
python字典的setdefault的巧妙用法
Aug 07 Python
Python爬虫工具requests-html使用解析
Apr 29 Python
如何在Python对Excel进行读取
Jun 04 Python
详解pandas获取Dataframe元素值的几种方法
Jun 14 Python
python实现按日期归档文件
Jan 30 Python
Python学习笔记之文件的读写操作实例分析
Aug 07 #Python
详解python中__name__的意义以及作用
Aug 07 #Python
Pandas0.25来了千万别错过这10大好用的新功能
Aug 07 #Python
Python编程学习之如何判断3个数的大小
Aug 07 #Python
Python使用import导入本地脚本及导入模块的技巧总结
Aug 07 #Python
python可视化篇之流式数据监控的实现
Aug 07 #Python
Python+AutoIt实现界面工具开发过程详解
Aug 07 #Python
You might like
咖啡与牛奶
2021/03/03 冲泡冲煮
php用正则表达式匹配中文实例详解
2013/11/06 PHP
php实现保存submit内容之后禁止刷新
2014/03/19 PHP
PHP的MVC模式实现原理分析(一相简单的MVC框架范例)
2014/04/29 PHP
PHP数组操作――获取数组最后一个值的方法
2015/04/14 PHP
PHP使用ODBC连接数据库的方法
2015/07/18 PHP
php创建多级目录与级联删除文件的方法示例
2019/09/12 PHP
JTrackBar水平拖动效果
2007/07/15 Javascript
JS 用6N±1法求素数 实例教程
2009/10/20 Javascript
JavaScript制作的可折叠弹出式菜单示例
2014/04/04 Javascript
js实现右下角提示框的方法
2015/02/03 Javascript
可以浮动某个物体的jquery控件用法实例
2015/07/24 Javascript
Javascript闭包实例详解
2015/11/29 Javascript
nodejs修复ipa处理过的png图片
2016/02/17 NodeJs
彻底解决 webpack 打包文件体积过大问题
2017/07/07 Javascript
打通前后端构建一个Vue+Express的开发环境
2018/07/17 Javascript
基于Vue 服务端Cookies删除的问题
2018/09/21 Javascript
微信小程序引入VANT组件的方法步骤
2019/09/19 Javascript
jQuery单页面文字搜索插件jquery.fullsearch.js的使用方法
2020/02/04 jQuery
jquery实现垂直手风琴菜单
2020/03/04 jQuery
200 行python 代码实现 2048 游戏
2018/01/12 Python
Python django使用多进程连接mysql错误的解决方法
2018/10/08 Python
在cmder下安装ipython以及环境的搭建
2018/10/19 Python
django 配置阿里云OSS存储media文件的例子
2019/08/20 Python
纯CSS3编写的的精美动画进度条(无flash/无图像/无脚本/附源码)
2013/01/07 HTML / CSS
利用HTML5中Geolocation获取地理位置调用Google Map API在Google Map上定位
2013/01/23 HTML / CSS
阿玛尼化妆品美国官网:Giorgio Armani Beauty
2017/02/02 全球购物
New Balance波兰官方商城:始于1906年,百年慢跑品牌
2017/08/15 全球购物
巴黎欧莱雅法国官网:L’Oreal Paris
2019/04/30 全球购物
Elizabeth Gage官网:英国最好的珠宝设计之一
2020/09/26 全球购物
公司培训心得体会
2014/01/03 职场文书
《美丽的小兴安岭》教学反思
2014/02/26 职场文书
《那片绿绿的爬山虎》教学反思
2014/02/27 职场文书
浅谈MySQL user权限表
2021/06/18 MySQL
星际争霸:毕姥爷vs解冻01
2022/04/01 星际争霸
MySQL的表级锁,行级锁,排它锁和共享锁
2022/07/15 MySQL