2024-03-29 15:11:30 发布
网友
我想知道如何在表单验证失败时将.error类添加到输入元素(to registration app)。
如果要将错误CSS类放置到表单输入小部件(而不是它们的容器)中,可以从以下对象派生表单类:
class StyledErrorForm(forms.Form): def is_valid(self): ret = forms.Form.is_valid(self) for f in self.errors: self.fields[f].widget.attrs.update({'class': self.fields[f].widget.attrs.get('class', '') + ' error'}) return ret
这可以完全通过你的模板完成。
为要测试的每个表单字段构建表单模板可以使用以下示例构造
<input type="text" class="reg-txt{% if form.fieldname.errors %} errors{% endif %}"/>
这使您无需修改view&django表单代码即可提供所需的界面。
现在很简单了——Django1.2的新特性
只需在表单类中添加一个属性即可。文档中的“new in 1.2”注释中提到了此功能,但您可以在django.forms.forms.BoundField.css_classes找到其魔力,这里是API reference,还有一个示例:
django.forms.forms.BoundField.css_classes
class MyForm(forms.Form): required_css_class = "required" error_css_class = "error"
如果要将错误CSS类放置到表单输入小部件(而不是它们的容器)中,可以从以下对象派生表单类:
这可以完全通过你的模板完成。
为要测试的每个表单字段构建表单模板可以使用以下示例构造
这使您无需修改view&django表单代码即可提供所需的界面。
现在很简单了——Django1.2的新特性
只需在表单类中添加一个属性即可。文档中的“new in 1.2”注释中提到了此功能,但您可以在
django.forms.forms.BoundField.css_classes
找到其魔力,这里是API reference,还有一个示例:相关问题 更多 >
编程相关推荐