django.po,django order by

  django.po,django order by

  学习笔记,仅供参考。

  例如,目录表单验证

  表单验证

  提供了表单和字段验证。我们可以使用form.is_valid()方法来验证表单。如果此方法的返回值为True,则表示当前表单是合法的。如果返回值为假,说明表单验证有问题。

  立正!这里,下面的表格指的是表格的对象。表单类。

  例如

  基于上一篇博客中的mywebsite_bookstore项目,我们举一个例子来学习表单验证。

  如果我们不进行表单验证操作,那么,我们注册的时候,姓名可以填写任意格式和长度的数据,这显然不符合一般的填写要求,也不方便我们办理:

  为了让用户规范的填写注册信息,我们需要对表格进行验证,即不按照规范填写信息,注册就不成功。

  在userinfo应用程序下的views.py模块中,我们修改了视图函数test_form,增加了一个表单验证函数:

  定义测试表单(请求):

  if request.method==GET :

  myform=forms。RegForm()

  #创建一个对象

  return render(request, userinfo/test_form.html ,

  locals())

  elif request.method==POST :

  myform=forms。RegForm(请求。帖子)

  if myform.is_valid():

  #检查表单中的数据是否合法。

  打印(myform.cleaned_data)

  #输出表单类中所有属性值的字典

  返回HttpResponse( h2表单提交成功!/h2 br str(myform.cleaned_data))

  否则:

  返回HttpResponse( h2表单数据验证失败!/H2’)注意!如果希望myform.is_valid()方法返回True,需要以下三个条件同时验证成功:

  验证forms.xxxField()方法中的参数值,如果验证成功,则返回None如果验证失败,它将抛出表单。ValidationError异常来验证form.clean_ attribute name (self)方法中的属性,如果验证成功,将返回属性值。表格。验证失败时会引发ValidationError异常。验证form.clean(self)方法(表单的整体结构)。验证成功时返回self.cleaned_data,表单。验证失败时会引发ValidationError异常。

  现在,我们编辑forms.py并添加两种验证方法:

  # -*-编码:utf-8 -*-

  从django进口表格

  类RegForm(forms。表单):

  username=forms . charfield(label=输入昵称)

  password=forms . charfield(label=输入密码,

  小部件=表单。密码输入)

  password repeat=forms . charfield(label=再次输入密码,

  小部件=表单。密码输入)

  Tele=表单。CharField(label=手机号码,必填=False)

  电子邮件=表单。CharField(label= mailbox ,required=False,

  小部件=表单。电子邮件输入)

  #输入类型=文本

  def clean_username(自己):

  #检查单个属性。

  username=self . cleaned _ data[ username ]

  if (len(用户名)6) (len(用户名)12):

  提高表格。ValidationError(用户名必须在6到12个字符之间!)

  返回用户名

  def clean(自我):

  #属性之间的检查(整体检查)

  pwd 1=self . cleaned _ data[ password ]

  pwd 2=self . cleaned _ data[ password repeat ]

  如果pwd1!=pwd2:

  提高表格。ValidationError(两个输入不一致!)

  Return.cleaned _ data注意views.py模块中test_form视图方法中的is_valid()方法会自动调用clean_username函数和clean函数。

  我们向http://127 . 0 . 0 . 1:8000/userinfo/test _ form/发起请求,填写符合要求的注册信息:

  单击“注册”以显示表单已成功提交:

  当我们填写的用户名大于12个字符时,再次点击注册,Django会提示我们验证失败:

  转载请联系作者获得转载授权,否则将追究法律责任。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: