创建模板
在工程目录下,创建 templates
1 .配置路径
setting.py文件夹里
2.创建视图
3.路由
from django.urls import path
from booktest import views
urlpatterns = [
path('testview/', views.TestView.as_view())
]
4.模板文件
上面四个步骤步准备完成之后,开始测试
模板逻辑已经跑通了
查询数据 返回 显示在模板里
class BookView(View):
def get(self, request):
books = BookInfo.objects.all()
print(books)
dict1 = {
'books': books,
}
return render(request, 'booktest/book.html', dict1)
Cookie
设置cookie 使用 response对象 set_cookie
class BookView(View):
def get(self, request):
books = BookInfo.objects.all()
print(books)
dict1 = {
'books': books,
}
res = render(request, 'booktest/book.html', dict1)
res.set_cookie('name', 'zhuzhuzhu', max_age=100000)
return res
获取cookie 使用request对象
class CookieView(View):
def get(self, request):
name = request.COOKIES.get('name')
print(name)
return HttpResponse(name)
把session存到redis里
django配置,虚拟机连接windos的redis解决方法
CACHES = {
'default': {
'BACKEND': 'django_redis.cache.RedisCache',
'LOCATION': 'redis://192.168.81.42/6',
'OPTIONS': {
'CLIENT_CLASS': 'django_redis.client.DefaultClient',
}
}
}
SESSION_ENGINE = 'django.contrib.sessions.backends.cache' # cashe是存缓存 db是数据库
SESSION_CACHE_ALIAS = 'default' # 使用的缓存别名
存session :
request.session['name'] ='小明'
request.session['age'] =20
request.session['gender'] =1
取session
name = request.session.get('name')
age= request.session.get('age')
gender= request.session.get('gender')
设置session有效期 :
request.session.set_expiry(value)
如果value是一个整数,session将在value秒没有活动后过期.
如果value为0,那么用户session的Cookie将在用户的浏览器关闭时过期.
如果value为None,那么session有效期将采用系统默认值,为两周.
可以通过setting.py中设置SESSION_COOKIE_AGE来设置全局默认值
删除
# request.session.clear() 把对应的数据全部删除 保留key
# request.session.flush() 把key和数据全部 删除
del request.session['name'] 把数据里的指定的key的删除