这是views页面
使用获取
def GetView(request):
page=request.GET.get('page')
size=request.GET.get('size')
return HttpResponse(f"解析GET请求,page={page},size={size}")
def FormView(request):
把form.html传递过来
return render(request,'form.html')
定义post接受
def PostView(request):
账号
user=request.POST.get('user')
密码
pwd = request.POST.get('pwd')
在页面中加载数据
return HttpResponse(f"解析POST请求,usr={user},pwd={pwd}")
from django.http import JsonResponse
def JsonView(request):
return JsonResponse({'name':'Tom','age':18})
from django.shortcuts import redirect
def RedirectView1(request):
return HttpResponse("奶茶店开门了,可以买奶茶")
def RedirectView2(request):
print("奶茶店没开门,重定向到另一个奶茶店")
就返回red1
return redirect('/red1/')
from django.views import View
class CbvView(View):
def get(self,request):
return HttpResponse('GET请求处理')
def post(self,request):
return HttpResponse('POST请求处理')
def put(self,request):
return HttpResponse('PUT请求处理')
def delete(self,request):
return HttpResponse('DELETE请求处理')
这是url模块
from django.contrib import admin
from django.urls import path
from myapp import views
urlpatterns = [
path('admin/', admin.site.urls),
path('myview/',views.myview),
path('get/',views.GetView),
path('form/',views.FormView),
path('post/',views.PostView),
path('json/',views.JsonView),
path('red1/',views.RedirectView1),
path('red2/',views.RedirectView2),
path('cbv/',views.CbvView.as_view()),
]
这是index.html模块
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h3>表单页面</h3>
<form action="/post/" method="post">
{% csrf_token %}
账号:<input type="text" name="user">
密码:<input type="password" name="pwd">
<input type="submit" value="提交">
</form>
</body>
</html>