如何在Django中更新有错误的表单?

时间:2014-01-27 03:00:33

标签: python django twitter-bootstrap

我正在尝试为我的表单编写一个is_valid方法,我正在使用这个一般策略:

def is_valid(self):
    form = super(UserCreateForm, self).is_valid()
    for f, error in self.errors.iteritems():
        if f!= '__all__':
            self.fields[f].widget.attrs.update({'class': 'error', 'value': strip_tags(error)})
    return form

如果我收到有用属性的错误,我想更新表单字段的属性。但是我已经有了字段的类属性(使用Bootstrap,所以类似'class':'form-control');我希望错误替换它们。但是,当我验证失败并且实际上出错时,Django抱怨说无法连接str和errorList。我对Django有点新意,所以我不确定这里发生了什么。

1 个答案:

答案 0 :(得分:0)

我这样做的方法是,在所有单独的div上检查错误,如果发现错误,则显示bootstrap的.error类。 例如:{%if form.error%}

就像你用每个字段名称一样检查它。 注意:可能有更好的方法,但我已经使用了很长时间,并且工作正常。