首页 文章

Django imageField没有验证 - 为什么?

提问于
浏览
0

我有一个模特:

class PartnerPrefs(models.Model):
    partner = models.ForeignKey(Partner)
    theme = models.IntegerField()
    email = models.EmailField()
    logo_file = models.ImageField(upload_to='logos/')

我的表格:

class PartnerPrefsForm(ModelForm):

    theme = forms.ChoiceField(
        choices=THEME_CHOICE,
        widget=forms.Select(),
        initial='1',
    )

    class Meta:
        model = PartnerPrefs
        exclude = ('partner',)

我的意见:

...
if request.method == 'POST':
    prefsform = PartnerPrefsForm(request.FILES, request.POST)
    if prefsform.is_valid():
        # do stuff

最后我的模板:

<form enctype='multipart/form-data' form action='.' method='post'>  
    {% csrf_token %}
    {{ prefsform.as_p }}
<input type="submit" value="Submit" />
</form>

每当我提交表单时,所有字段都会返回 This field is required... . 如果我从表单中删除 ImageField ,那么它工作正常 . 我找不到问题所在 .

这里的任何帮助将不胜感激 .

1 回答

  • 0

    问题结果是 request.POSTrequest.FILES 传递给from的顺序 . request.POST 必须先行 .

相关问题