代码
视频地址 https://www.bilibili.com/video/av45473851/?p=10 https://www.bilibili.com/video/av45473851/?p=11
| 属性 | 类型 | 说明 |
|---|---|---|
| path | 字符串 | 请求页面的完整路径,不包含域名和参数部分 |
| method | 字符串 | 请求方式:get、post |
| encoding | 字符串 | 编码方式:None、utf-8 |
| GET | QueryDict | get请求方式的所有参数 |
| POST | QueryDict | post请求方式的所有参数 |
| FILES | 字典 | 上传文件数据 |
| COOKIES | 字典 | cookie数据 |
| session | 字典 | session数据 |
# 用户登录页
def loginGet(request):
print(request)
print(request.method) #请求类型化
print(request.GET) #get请求方式的所有参数
print(request.GET.get('username')) #获取请求值
print(request.GET.get('pwd')) #获取请求值
print(request.GET.get('sex')) #获取请求值
print(request.GET.getlist('like')) #获取请求值
return render(request, 'user/login.html')
def loginPost(request):
print(request)
print(request.method) # 请求类型化
print(request.POST) # get请求方式的所有参数
print(request.POST.get('username')) # 获取请求值
return redirect('/user/index') #重定向
def index(request):
return HttpResponse('重定向')
def cookie(request):
if 'ck1' in request.COOKIES:
return HttpResponse('cookie: ' + request.COOKIES.get('ck1'))
else:
res = HttpResponse('第一次')
print(res)
res.set_cookie('ck1','zhang1')
return res
def session(request):
if request.session.get('k1') != None:
k1 = request.session.get('k1') + 1
k2 = request.session.get('k2') + 1
request.session['k1'] = k1
request.session['k2'] = k2
else:
request.session['k1'] = 100
request.session['k2'] = 200
k1 = 100
k2 = 200
return HttpResponse('session: k1' + str(k1) + ' k2:' + str(k2))
def delSess(request):
# 清除所有session值
request.session.clear()
# 清除整条session数据
request.session.flush()
# 删除session中指定的键和值
del request.session['键']
# 设置会话超时时
# 如果value是一个整数,会话将在value秒没有活动后过期。
# 如果value为0,那么用户会话的Cookie将在用户的浏览器关闭时过期。
# 如果value为None,那么会话永不过期。
request.session.set_expiry(30)
return HttpResponse('session操作')特别注意: 使用session时需要 使用命令创建数据库 不然会报错
no such table: django_session