我正在使用django-facebook,我希望个人资料图片是用户在Facebook注册时的图片。
在我的自定义用户模型(Userprofile)中,我有一个
profilpic = models.ImageField(...)
我的models.py中也有这个功能:
def create_facebook_profile(sender, instance, created, **kwargs):
if not created:
return
UserProfile.objects.create(user=instance)
post_save.connect(create_facebook_profile, sender=User)
我想知道是否可以将facebook个人资料图片用作我用户的“profilpic”。
我试着这样做:
def create_facebook_profile(sender, instance, created, **kwargs):
if not created:
return
UserProfile.objects.create(user=instance)
user_data = json.loads(instance.raw_data)
user_pic = user_data.get('image')
user = request.user
user.userprofile.profilpic = user_pic
user.save()
post_save.connect(create_facebook_profile, sender=User)
但它不起作用。关于如何做到这一点的任何想法?
答案 0 :(得分:0)
您正在尝试将网址保存到ImageField
,您需要先在本地读取并保存图像,然后将该新文件分配给ImageField
(假设是json)实际上有一个图像网址)。看看这个类似的问题: