2011-03-03 17 views
0

我有一个照片场在我用户配置模式,使任何用户都可以上传自己的照片。我在想,我需要的是为用户配置的ModelForm,但没有用户指定它会失败的,当然。但是,如果我通过了request.user作为参数到一个窗体构造 - 它不能工作,因为事情是形式的用户配置没有与该用户连接。如何在django中将指定用户的照片上传到UserProfile中?

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

有没有什么办法可以设置,哪个用户的配置文件要修改?

+0

不能使用会话数据? – Endophage

回答

1

你需要传递一个UserProfile的实例进行更新。

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

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

谢谢,但它不工作,也只是默默地失败。并且照片没有上传。 – Enchantner

+0

您是否对ModelForm保存方法或验证做过任何事情? –

0

问题解决! 我忘了添加

enctype="multipart/form-data" 

in form attributes。

相关问题