views:接收并响应请求
(1)配置URL
project.url
from django.contrib import admin
from django.urls import path
from django.conf.urls import url,include
urlpatterns = [
#配置视图
path('admin/', admin.site.urls),
path('',include(('myapp1.urls','myapp1'),namespace='myapp1')),#反向解析
]
myapp.url
from django.urls import path
from . import views
from django.conf.urls import url
urlpatterns = [
path('',views.index), #在视图下获得数据
url(r'^(\d+)/$',views.detail,name="detail"),#(反向解析)使用硬编码连接,动态生成链接
path('grades/',views.grades1),
path('addstu/',views.addstudents)
]
(2)404错误视图配置
settings.py
DEBUG = False
ALLOWED_HOSTS = ['*']
在templates下建一个404.html错误页面
(3)get:获取浏览器数据
views
#get获取浏览器数据
def get1(request):
a = request.GET.get('a')
#b = request.GET.get('b')
b = request.GET['b']
c = request.GET.get('c')
return HttpResponse(a + " " + b +" " + c)
def get2(request):
a = request.GET.getlist('a')
a0=a[0]
a1=a[1]
c = request.GET.get('c')
return HttpResponse(a0 + " " + a1 +" " + c)
(4)post:获取表单提交数据
views
def showregist(request):
return render(request,'myapp1/regist.html')
def regist(request):
request.POST.get("name")
request.POST.get("gender")
request.POST.getlist("hobby")
return HttpResponse("post")
(5)HttpResponse属性和方法
url配置
(6)重定向:重复利用模板(template)(下面两种方法皆可)
(7)JsonResponse
(8)状态保持
一般使用session存储数据(cookie不安全),记录当前请求者资料
删除session
设置过期时间