如何在django中为指定用户上传照片到UserProfile?

时间:2011-03-03 16:03:33

标签: python django forms upload

我的 UserProfile 模型中有照片字段,因此任何用户都可以上传他的照片。我认为我需要的是 UserProfile ModelForm ,但是如果没有用户指定,它当然会失败。但是,如果我将 request.user 作为参数传递给表单构造函数 - 它也不会起作用,因为表单的UserProfile没有与此用户连接。

class ProfileUploadPhotoForm(forms.ModelForm):
    class Meta:
        model = UserProfile
        fields = ('photo',)

有没有办法设置哪个用户的个人资料需要修改?

2 个答案:

答案 0 :(得分:1)

您需要将UserProfile的实例传递给更新。

uploadform = ProfileUploadPhotoForm(request.POST, request.FILES,\
    instance=request.user.userprofile)

if uploadform.is_valid():
    uploadform.save()

答案 1 :(得分:0)

问题解决了! 我忘了添加

enctype="multipart/form-data"

表单属性。