我正在使用 Django 的模型形式,它非常好。如果存在与之相关的验证错误,我如何突出显示实际的文本框(例如 border:red )。基本上我想要的是如果字段存在验证错误,则添加一个类(错误)。
问问题
18729 次
5 回答
16
那么定义error_css_class呢? http://docs.djangoproject.com/en/dev/ref/forms/api/#styling-required-or-erroneous-form-rows?
class MyForm(ModelForm):
error_css_class = 'error'
于 2011-01-31T11:57:47.633 回答
6
回答原来的问题。
您可以将所需的类添加到视图中您提交表单并进行form.is_valid()
检查的字段中。不是最漂亮的,但它会起作用。
def submit_form(request):
if request.method = 'POST':
if. form.is_valid():
# Do something with clean form data
pass
else:
# Append css class to every field that contains errors.
for field in form.errors:
form[field].field.widget.attrs['class'] += ' my-css-class'
return render(request, submit_form.html, {
'form': form
})
于 2018-11-01T19:21:29.727 回答
3
扩展errx的答案。
添加 CSS
.error input, .error select {
border: 2px red solid;
}
专门突出该领域
于 2014-04-11T14:49:24.333 回答
1
试试这个?
self.fields['field_you_want_to_add_error'].widget.attrs['class'] = "error"
于 2017-04-10T03:35:21.170 回答
1
模板 :
<div style="color:red">{{ userForm.short_description.errors.as_text }}</div>
于 2020-04-03T03:43:15.053 回答