自定义表单提交筛选分页怎么做_form组件和自定义分页

FORM组件

不利用form组件实现一个简陋的功能

需求

1.注册功能

用户输入的用户名中 不能包含'违规信息'

如果包含了 就提示用户 输入的内容不符合社会主义核心价值观

用户输入的密码 不能小于三位

如果密码少于三位 提示用户 密码太短了

(******)

校验数据通常是前后端都有校验

但是前端校验可有可无 哪怕再牛逼

后端也必须要有校验 反正一句话 前端可有不校验 后端必须校验!!!

思路

1.搭建前端页面 >>> 渲染页面

2.获取前端用户提交的数据校验 >>> 校验数据

3.对数据的校验的结果 展示到前端页面给用户查看 >>> 展示错误信息

# 后端

def reg(request):

back_dic = {"username":'','password':''}

if request.method == 'POST':

username = request.POST.get('username')

password = request.POST.get('password')

if '违规信息' in username:

# 提示信息

back_dic['username'] = '不符合社会主义核心价值观'

if len(password) < 3:

# 提示信息

back_dic['password'] = '密码不能少于三位'

return render(request,'reg.html',locals())

# 前端

username:

{ { back_dic.username }}

password:

{ { back_dic.password }}

使用form组件

定义一个类继承django 中的forms.Form类

在类中创建form组件字段

username = forms.CharField(min_length=3,max_length=8,max_length='用户名',

error_messages={

'min_length':'用户名最短三位',

'max_length':'用户名最长八位',

'required':'用户名不能为空'

},initial='我是初始值',required=False, widget=forms.widgets.TextInput(attrs={'class':'class值'})

)

# min_length char字段的最短长度

# max_length char字段的最长长度

# label 对象.字段.label获得的值,默认是首字母大写的字段名

# error_messages 错误信息的字典

{

'min_length':'不满足最短长度的错误信息',

'max_length':'不满足最长长度的错误信息',

'required':'文本框为空是的错误信息',

'invalid':'邮箱格式不正确时的展示信息',

}

# initial 设置文本框初始值,即前端的value

# required 默认为True,当为False时,意味着这个字段不传也可以通过,is_valid()也可以为True。但是只要你传了,就要校验

关于widget字段

# widget=forms.widgets.TextInput(attrs={'class':'class值'})

# 值一定为forms.widgets

# TextInput 规定里input的类型是text,还可以是其他

# attrs为这个input框添加

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值