django-redis
pip install django-redis
在 settings.py 设置 :
CACHES = {
'default': {
'BACKEND': 'django_redis.cache.RedisCache',
'LOCATION': 'redis://127.0.0.1:6379/1',
'OPTIONS': {
'CLIENT_CLASS': 'django_redis.client.DefaultClient',
}
}
}
SESSION_ENGINE = 'django.contrib.sessions.backends.cache'
SESSION_CACHE_ALIAS = 'default'
我的redis安装在E盘,也没有设置环境变量,
所以,要直接去到安装文件夹里面,看到有redis-cli.exe,在命令行输入 redis-cli回车
select 1 # 选择数据库1
keys * # 查看数据库
flushall # 清空
删除 session
昨天学习的知识点补充:
# 清除所有 session 的值(value),保留 key
request.session.clear()
# 清空所有
request.session.flush()
# 删除指定的键值对
del request.session['键']
设置 session 的有效期
- 如果value是一个整数,session将在value秒没有活动后过期
- 如果value为0, 那么用户session的Cookie将在用户的浏览器关闭时过期
- 如果value为None,那么session有效期将采用系统默认值,默认为2周, 可以通过在settings.py中设置
SESSION_COOKIE_AGE 来设置全局默认值 - session的过期时间,可以在谷歌浏览器–网址左边的叹号小圆圈那里查看
request.session.set_expiry(value)
类视图
一个函数里可以既接收GET请求,也可以接收POST请求
def login(request):
if request.method == 'GET':
return HttpResponse('get')
else:
return HttpResponse('post')
在 django 中可以使用类来定义一个视图,称为类视图。
使用类视图可以将视图对应的不同请求方式以类中的不同方法来区分。
1、继承自 View
2、类视图中的方法,是采用 http 方法的小写来区分不同的请求方式
url设置(注意有括号:as_view()):
path('163login/', views.LoginView.as_view())
views.py
class LoginView(View):
def get(self, request):
return HttpResponse('get'.center(9, '-'))
def post(self,request):
return HttpResponse('post'.center(9, '-'))
复习 类/面向对象知识
class Person(object):
# 对象方法
def play(self):
pass
@classmethod
def say(cls):
pass
@staticmethod
def eat():
pass
Person.eat()
Person.say()
bill = Person()
bill.play()