【问题标题】:Django Choicefield with required=True and no exception on blank choiceDjango Choicefield 与 required=True 并且空白选择没有例外
【发布时间】:2013-07-23 06:34:19
【问题描述】:

我想我的问题从标题就很清楚了。

基本上我有一个带有动态选择字段的表单。我为选择字段创建了一个空白选项。

 choices = [('', '----------')]

问题是如果我提交空白选项,表单会验证。我已经安装了 django 1.5,所以即使在早期版本中这样的东西有效,并且抛出了验证异常,现在它不是。

所以最大的问题是,我应该如何以及在哪里验证这样的事情?

我尝试 ovveride Choicefield 和它的验证方法,但我仍然得到相同的结果:

class DynamicChoiceField(forms.ChoiceField):
    # The only thing we need to override here is the validate function.
    def validate(self, value):
        if self.required and not value:
            raise ValidationError(self.error_messages['required'])

安迪的想法伙计们?

【问题讨论】:

    标签: django forms choicefield


    【解决方案1】:

    是的,这对我来说很清楚。但是当您更改所需的 =False 时会得到什么。或者尝试在模型中使用 django force_insert =True ,我从未使用过,但尝试一下。

    【讨论】:

    • 我有点不知所措。碰巧我在一个视图中初始化了表单,但是当提交表单时,我将它重定向到另一个视图,并在其中填充了 request.POST。不知何故,这起到了一定的作用,因为现在当我在一个视图中移动所有内容时,验证按预期工作。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-18
    • 1970-01-01
    • 2011-10-30
    相关资源
    最近更新 更多