Django Forms组件 的参数配置案例 input样式, 渲染的标签加class 错误信息提示

Forms渲染出标签类型

密码型、文本型、邮箱型框

from django.forms import widgets

# 自定义格式方法
class UserForm(forms.Form):
	'''最小4位 且 模式:普通文本'''
	name = forms.CharField(min_length=4, label='姓名:',widget=widgets.TextInput())  
	
	'''最小4位 且 模式:密码模式'''
	pwd = forms.CharField(min_length=4, label='密码:', widget=widgets.PasswordInput())  

渲染时添加属性 class=’’(便于bootstrap)

from django.forms import widgets

'''在widgets.类型(加入字典形式的标签信息)'''

class UserForm(forms.Form):
	# 模式:普通文本 标签加上:class="form-control"
	name = forms.CharField(widget=widgets.TextInput(attrs={'class': 'form-control'}))  
	
	# 模式:密码模式 标签加上:class="form-control"
	pwd = forms.CharField(widget=widgets.PasswordInput(
	attrs={'class': 'form-control'}
	))  

渲染自定义错误提示

视图

from django.forms import widgets
'''追加error_messages参数 dict型式'''

class UserForm(forms.Form):

	# 模式:required=不能为空的提示
	name = forms.CharField(min_length=4, label='姓名:', 
						  error_messages={
                                         'title': {'required': '不能为空哦亲亲'},
							            'price': {'invalid': '格式错误(提示方法)'},
							            # '字段': {'错误类型': '提示信息'}
                          })  
	
	# 模式:invalid=格式错误
	pwd = forms.CharField(min_length=4, label='密码:',
						  error_messages={
                                          'title': {'required': '不能为空哦亲亲'},
								            'price': {'invalid': '格式错误(提示方法)'},
								            # '字段': {'错误类型': '提示信息'}
                          })  

HTML展示错误信息

 <form action="" method="post" novalidate="novalidate">  
 <!--要自定义提示必须  novalidate="novalidate"-->
 
     {% csrf_token %}
     {% for field in form %}
         <p>
             {{ field.label }}{{ field }} <span>{{ field.errors.0 }}</span>
             <!--错误信息固定:field.errors.0 -->
         </p>
     {% endfor %}
     <p><input type="submit" value="提交"></p>
 </form>
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值