HttpResponse
属性一、render
渲染一个页面
def test(request):
# return HttpResponse("<h1>我是前端代码</h1>")#硬编码,不用
"""
下面的方法软编码,但是复杂,可以使用一条代码包括:
t = get_template('teacher/test.html')#获取到页面
html = t.render()#进行渲染后才可以进行访问
return HttpResponse(html)#返回页面
:param request:
:return:
"""
return render(request,'teacher/test.html')#使用这个方法
属性二、redirect
重定向,跳转页面
def login(request):
# return redirect('/index/') #跳转
return redirect('index') #跳转,对应url中name的命名
属性三、JsonResponse
返回json数据
#json
def test_json(request):
sex = request.GET.get("sex")
sex = int(sex)
res = Student.objects.values("name","age","sex").filter(sex=sex)
res = list(res)
data = {"result" : res}
return JsonResponse(data)
结果:
{"result": [{"sex": 1, "name": "\u4ed8\u4f73\u661f", "age": 25}, {"sex": 1, "name": "\u80e1\u6c38\u96f7", "age": 29}, {"sex": 1, "name": "\u848b\u5fd7\u5b66", "age": 28}]}
cookie
客户端想服务端发送请求时,服务器会在http协议中加上请求头,通过响应,传送至客户端,并保存,客户端在此访问时,将携带这个cookie去访问,这样服务器才能区分不同的客户端;
{#页面展示#}
<body>
{% block content %}
<h3>我是第{{ num }}次访问</h3>
</body>
#函数体
def index(request):
num = request.COOKIES.get("num") #获取次数
if num:
num = int(num) + 1
else:
num = 1
respones = render(request,'teacher/index.html',context={
'num':num
})
respones.set_cookie("num",num)
return respones
网友评论