【发布时间】:2018-05-23 03:13:36
【问题描述】:
我正在尝试将FileField 更新为从互联网下载的图像。我有以下代码
# update profile pic
pic_url = fb_login_data['picture']['data']['url']
pic_url_parsed = urllib.parse.urlparse(pic_url)
image_req = urllib.request.urlretrieve(pic_url)
with open(image_req[0], 'rb') as f:
user.profile_image.save(os.path.basename(pic_url_parsed.path),
File(f))
这种行为很奇怪:图像已正确保存到磁盘中它应该在的 MEDIA_ROOT 目录中,但在数据库中,该字段保持为空。我也试过手动拨打user.save()。
您有什么想法为什么会发生这种情况以及如何正确更新 FileField?
使用 Django 2.0 和 Python 3.6.3
【问题讨论】:
标签: django file-upload django-models