2011-11-16 53 views
0

我得到保存提交的表單圖像前場的清潔方法,「這是必須填寫」對於像場的錯誤在提交表單表單嚮導如何在窗體嚮導(Django的1.2)

class SignupForm(forms.ModelForm): 
    username = forms.CharField(
     label = _("Username*"), 
     max_length = 30, 
     widget = forms.TextInput() 
    ) 
    image = forms.ImageField(label = _("Profile picture*"), required=True) 
class Meta: 
    model = Profile 
    fields = ('name','gender','birth_date',) 

這是我在表單嚮導最後一種形式。在提交此表單時,我使用乾淨的方法獲取了用戶名和其他字段,但沒有顯示圖像。在驗證此表單之前有沒有辦法保存圖像以避免「此字段是必需的」錯誤?

+0

你的意思是,你想從驗證中排除領域的「形象」? – Paulo

+0

我想驗證它,但是在提交表單時這個字段是空的,儘管上傳的文件存在於request.FILES中。另外在「self.data」中的「乾淨」的方法這個表單圖像字段不存在。 @Paulo你能告訴我在表單嚮導驗證之前表單被提交的方法嗎? –

+0

在request.FILES ]}>。但在request.POST「圖片」字段不存在。我想要做一些事情:「SignupForm(request.POST,request.FILES)」,以便我可以手動驗證圖像域。 –

回答

0

要通過表單嚮導上傳你的圖片,你應該更改文件的「Django的/的contrib/formtools/wizard.py」。在這張票code.djangoproject.com/ticket/7439中提到了這些更改。如果你不想改變djnago代碼,然後只需複製「formtools」文件夾到你的應用程序,然後進行更改,而是使用:

from django.contrib.formtools.wizard import FormWizard 

使用:

from formtools.wizard import FormWizard 

還設置ENCTYPE =「多/表單數據「。