0

Form Wizardでフォームを送信すると、画像フィールドに「このフィールドは必須です」というエラーが表示されます。

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',)

これがフォーム ウィザードの最後のフォームです。このフォームを送信すると、クリーンな方法でユーザー名とその他のフィールドが取得されましたが、画像は取得されませんでした。「このフィールドは必須です」というエラーを回避するために、このフォームの検証前に画像を保存する方法はありますか?

4

1 に答える 1

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="multipart/form-data"も設定します。

于 2011-11-25T11:58:40.453 に答える