博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
django 表单提交 post 、get
阅读量:7191 次
发布时间:2019-06-29

本文共 3944 字,大约阅读时间需要 13 分钟。

介绍 : django项目开发必须懂的知识点,下面使用的数据库是mysql ,

models.py  数据库表结构,

# -*- coding: utf-8 -*- from __future__ import unicode_literals from django.db import models # Create your models here. class Test(models.Model):     name = models.CharField(max_length=20)

 

1、GET 请求:

urls.py

"""pythondjango URL Configuration The `urlpatterns` list routes URLs to views. For more information please see:     https://docs.djangoproject.com/en/1.11/topics/http/urls/ Examples: Function views     1. Add an import:  from my_app import views     2. Add a URL to urlpatterns:  url(r'^$', views.home, name='home') Class-based views     1. Add an import:  from other_app.views import Home     2. Add a URL to urlpatterns:  url(r'^$', Home.as_view(), name='home') Including another URLconf     1. Import the include() function: from django.conf.urls import url, include     2. Add a URL to urlpatterns:  url(r'^blog/', include('blog.urls')) """ from django.conf.urls import url from django.contrib import admin from BlogDjango import views from polls import views as pollsviews, search, search2 urlpatterns = [     url(r'^admin/', admin.site.urls),     url(r'^hello/+\d', views.hello),     url(r'^base/', views.base),     url(r'^testdb$', pollsviews.testdb),     url(r'^querydb$', pollsviews.selectDB),     url(r'^updateDB$', pollsviews.updateDB),     url(r'^deleteDB$', pollsviews.deleteDB),     url(r'^search-form$', search.search_form),     url(r'^search$', search.search),     url(r'^search-post$', search2.search_post), ] 新建一个search.py
# -*- coding: utf-8 -*- from django.http import HttpResponse from django.shortcuts import render_to_response # 表单 def search_form(request):     return render_to_response('search_form.html') # 接收请求数据 def search(request):     request.encoding = 'utf-8'     print request.GET     if 'q' in request.GET:         message = '你搜索的内容为: ' + request.GET['q']     else:         message = '你提交了空表单'     return HttpResponse(message)
创建一个页面
   
菜鸟教程(runoob.com)
结果: 1、

   2、

 

 

2、POST请求(重要)

注意:请求之后,经过我们自己的逻辑处理后,如何返回到页面并且解析: 新建一个search2.py
# -*- coding: utf-8 -*- from django.shortcuts import render from django.views.decorators import csrf # 接收POST请求数据 def search_post(request):     ctx = {'rlt': 10000}     print request.POST     if request.POST:         ctx['rlt'] = request.POST['q']     return render(request, "post.html", ctx)
urls.py
"""pythondjango URL Configuration The `urlpatterns` list routes URLs to views. For more information please see:     https://docs.djangoproject.com/en/1.11/topics/http/urls/ Examples: Function views     1. Add an import:  from my_app import views     2. Add a URL to urlpatterns:  url(r'^$', views.home, name='home') Class-based views     1. Add an import:  from other_app.views import Home     2. Add a URL to urlpatterns:  url(r'^$', Home.as_view(), name='home') Including another URLconf     1. Import the include() function: from django.conf.urls import url, include     2. Add a URL to urlpatterns:  url(r'^blog/', include('blog.urls')) """ from django.conf.urls import url from django.contrib import admin from BlogDjango import views from polls import views as pollsviews, search, search2 urlpatterns = [     url(r'^admin/', admin.site.urls),     url(r'^hello/+\d', views.hello),     url(r'^base/', views.base),     url(r'^testdb$', pollsviews.testdb),     url(r'^querydb$', pollsviews.selectDB),     url(r'^updateDB$', pollsviews.updateDB),     url(r'^deleteDB$', pollsviews.deleteDB),     url(r'^search-form$', search.search_form),     url(r'^search$', search.search),     url(r'^search-post$', search2.search_post), ]
post.html
   
菜鸟教程(runoob.com)
{% csrf_token %}

{

{ rlt }}

结果:

 

注意:

     在模板的末尾,我们增加一个 rlt 记号,为表格处理结果预留位置。

     表格后面还有一个{% csrf_token %}的标签。csrf 全称是 Cross Site Request Forgery。这是Django提供的防止伪装提交请求的功能。POST 方法提交的表格,必须有此标签。

 

转载于:https://www.cnblogs.com/wenhongyu/p/7241123.html

你可能感兴趣的文章
FFmpeg(三) 编解码相关函数理解
查看>>
4.Git的安装
查看>>
jquery中的event
查看>>
文件打开与读入
查看>>
离线安装Eclipse插件testng
查看>>
理解工厂模式
查看>>
锐捷客户端-您不在许可范围中,请确认您的权限
查看>>
DNA序列编码中Hairpin的定义和计算
查看>>
c#中的浮点型转整形的舍取-四舍五入和银行家舍入
查看>>
java基本类型的默认值
查看>>
HDU - 6394 Tree(树分块+倍增)
查看>>
Leetcode
查看>>
SQL语句
查看>>
vue中的作用域插槽
查看>>
Visual Leak Detector使用方法
查看>>
Mybatis generator的使用
查看>>
聊下并发和Tomcat线程数(错误更正)
查看>>
L2-001. 紧急救援(迪杰斯特拉算法)
查看>>
leetcode297. 二叉树的序列化与反序列化
查看>>
bzoj3272 3638
查看>>