django为我们提供了form表单验证功能,下面来学习一下:


创建了django项目之后,创建app。

 配置urls:
  1. from django.conf.urls import url
  2. from django.contrib import admin
  3. from myapp01 import views
  4. urlpatterns = [
  5. url(r'^admin/', admin.site.urls),
  6. url(r'^login/', views.login),
  7. ]
配置views(app01.views):
  1. from django.shortcuts import render
  2. from django import forms
  3. # Create your views here.
  4. class InputForm(forms.Form):
  5. # 下面使用的变量名必须和html中input标签的name值相同
  6. username = forms.CharField(required=True)
  7. password = forms.CharField(required=True)
  8. def login(request):
  9. if request.method == 'POST':
  10. obj = InputForm(request.POST)
  11. ret = obj.is_valid()
  12. print(ret,obj.data)
  13. if ret:
  14. print(obj.clean())
  15. else:
  16. print(obj.errors)
  17. return render(request, 'login.html')

配置tamplates(index.html):
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. </head>
  7. <body>
  8. <div>
  9. <div>
  10. <input type="text" name="username" />
  11. </div>
  12. <div>
  13. <input type="password" name="password" />
  14. </div>
  15. <input type="button" value="提交" onclick="DoSubmit();"/>
  16. </div>
  17. <script src="/static/jquery-2.1.4.min.js"></script>
  18. <script>
  19. function DoSubmit() {
  20. var input_dic = {};
  21. $('input').each(function () {
  22. var v = $(this).val();
  23. var n = $(this).attr('name');
  24. input_dic[n] = v;
  25. });
  26. console.log(input_dic);
  27. $.ajax({
  28. url:'/login/',
  29. type:'POST',
  30. data:input_dic,
  31. success: function (rdata) {
  32. console.log(rdata);
  33. },
  34. error: function () {
  35. }
  36. })
  37. }
  38. </script>
  39. </body>
  40. </html>

 提交之后就可以获取输入的内容。

 
 
 

循序渐进Python3(十三) --0-- django之form表单的更多相关文章

  1. Django的form表单

    html的form表单 django中,前端如果要提交一些数据到views里面去,需要用到 html里面的form表单. 例如: # form2/urls.py from django.contrib ...

  2. Django 11 form表单(状态保持session、form表单及注册实现)

    Django 11 form表单(状态保持session.form表单及注册实现) 一.状态保持 session 状态保持 #1.http协议是无状态的:每次请求都是一次新的请求,不会记得之前通信的状 ...

  3. 转载:Django之form表单

    转载: 一.使用form类创建一个表单 先定义好一个RegForm类: forms.py from django import forms # 导入forms类 class NameForm(form ...

  4. Django--分页器(paginator)、Django的用户认证、Django的FORM表单

    分页器(paginator) >>> from django.core.paginator import Paginator >>> objects = ['joh ...

  5. django之form表单验证

    django中的Form一般有两种功能: 输入html 验证用户输入 #!/usr/bin/env python # -*- coding:utf- -*- import re from django ...

  6. Day19 Django之Form表单验证、CSRF、Cookie、Session和Model操作

    一.Form表单验证 用于做用户提交数据的验证1.自定义规则 a.自定义规则(类,字段名==html中的name值)b.数据提交-规则进行匹配代码如下: """day19 ...

  7. 【django之form表单】

    一.构建一个表单 假设你想在你的网站上创建一个简单的表单,以获得用户的名字.你需要类似这样的模板: <form action="/your-name/" method=&qu ...

  8. Django 提交 form 表单(使用sqlite3保存数据)

    优化 提交 form 表单,https://www.cnblogs.com/klvchen/p/10608143.html 创建数据库的字段,在 models.py 中添加 from django.d ...

  9. django - 总结 - form表单

    {{ form.as_table }} 以表格的形式将它们渲染在<tr> 标签中 {{ form.as_p }} 将它们渲染在<p> 标签中 {{ form.as_ul }} ...

随机推荐

  1. 【ccf2017-12-2】游戏(模拟)

    问题描述 有n个小朋友围成一圈玩游戏,小朋友从1至n编号,2号小朋友坐在1号小朋友的顺时针方向,3号小朋友坐在2号小朋友的顺时针方向,……,1号小朋友坐在n号小朋友的顺时针方向. 游戏开始,从1号小朋 ...

  2. Flask 的 template模板 与 jinja2语法

    Flask 的 template模板 与 jinja2语法 Flask使用的是Jinja2模板,所以其语法和Django基本无差别 1.模板基本数据的渲染 变量 {{..}} 列表 {% for it ...

  3. 移植 MIUI Framework

    移植MIUI Framework 原文:http://www.miui.com/thread-409543-1-1.html 1. 为什么使用代码插桩 首先我们来回顾第一章中的Android软件架构图 ...

  4. Activity Process Task Application 专题讲解

    Activity Process Task Application 专题讲解 Activity.和进程 为了阅读方便,将文档转成pdf http://files.cnblogs.com/franksu ...

  5. How to handle your webdriver exceptions

    The most common exceptions and their solutions: NoAlertPresentException Indicates that a user has tr ...

  6. Golang使用MongoDB通用操作

    MongoDB是Nosql中常用的一种数据库,今天笔者就简单总结一下Golang如何使用这些通用的供能的,不喜勿喷... 研究的事例结构如下: type LikeBest struct { Autho ...

  7. HSRP/VRRP/GLBP

    当网络足够大的时候,网络规划师要考虑的技光是网络本身的性能问题,冗余技术也是必不可少的. 常见的冗余网关技术有• 热备份路由协议(HSRP).• 虚拟路由器冗余协议(VRRP)• 网关负载均衡协议(G ...

  8. HihoCoder - 1236 Scores (五维偏序,分块+bitset)

    题目链接 题意:给定n个五维空间上的点,以及m组询问,每组询问给出一个点,求五个维度都不大于它的点有多少个,强制在线. 神仙题 单独考虑每个维度,把所有点按这个维度上的大小排序,然后分成T块,每块用一 ...

  9. HDU - 6041:I Curse Myself(Tarjan求环&K路归并)

    There is a connected undirected graph with weights on its edges. It is guaranteed that each edge app ...

  10. HihoCoder 1067 最近公共祖先(ST离线算法)

    最近公共祖先·二 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 上上回说到,小Hi和小Ho用非常拙劣——或者说粗糙的手段山寨出了一个神奇的网站,这个网站可以计算出某两个 ...