Django缓存使用方法
Django缓存分为Session和Cookie:Session为放在服务器端的缓存;Cookie为放在客户端(浏览器)的缓存。
Session一般用来保存登录会话;Cookie一般用来保存一些个性化的设置。
Session示例:
#!/usr/bin/env python
#-*- encoding:utf-8 -*- from django.shortcuts import render,redirect # Create your views here. def login(request): if request.method == 'POST':
user = request.POST.get('username',None)
pwd = request.POST.get('password',None) if user == 'alex' and pwd == '': #登录成功
request.session['is_login'] = {'user':user} #设置session,表示用户登录成功
return redirect('/login/index/')
else: #登录失败
return render(request,'login/login.html',{'msg':'用户名或密码错误'}) return render(request,'login/login.html') def index(request): user_dict = request.session.get('is_login',None) #获取session,用于判断用户是否登录成功
if user_dict:
return render(request, 'login/index.html',{'username':user_dict['user']})
else:
return redirect('/login/login') def logout(request):
del request.session['is_login'] #删除session return redirect('/login/login')
Cookie示例:
def Page(request,page):
#第二种分页方式
counts = Host.objects.all().count() # 获取数据总条数 #print request.POST per_item = request.COOKIES.get('pager_num',5) #从cookie中获取key为pager_num的值,获取不到则设置默认值为5
per_item = int(per_item)
#print 'per_item:',per_item pages = PageInfo(page,counts,'/web/page/',per_item)
result = Host.objects.all()[pages.start_page:pages.end_page] # 获取第page页内容
page_string = pages.page_string
#print 'page_string:',page_string ctx = {
'data':result,
'count':counts,
'page_string':page_string,
} response = render(request,'page.html',ctx)
#response.set_cookie(key='k1',value='v1') #设置cookie
#request.COOKIES #获取cookie
return response
Django缓存使用方法的更多相关文章
- 版本控制,django缓存,跨域问题解决
		
复习 分页: 1. 简单分页 2. 偏移分页 3. 加密分页 解析器:客户处理前端提交来的数据 urlencode: body体中的数据格式: key=value& formdata编码:为区 ...
 - 中间件和Django缓存
		
中间件定义: 中间件是一个.一个的管道,如果相对任何所有的通过Django的请求进行管理都需要自定义中间件 中间件可以对进来的请求和出去的请求进行控制 中间件是一类. 看下面的代码在settings里 ...
 - 一.rest-framework之版本控制   二、Django缓存  三、跨域问题 四、drf分页器   五、响应器  六、url控制器
		
一.rest-framework之版本控制 1.作用 用于版本的控制 2.内置的版本控制 from rest_framework.versioning import QueryParameterVer ...
 - Django 2.0 学习(18):Django 缓存、信号和extra
		
Django 缓存.信号和extra Django 缓存 由于Django是动态网站,所以每次请求均会去数据库进行相应的操作,当程序访问量大时,耗时必然会显著增加.最简单的解决方法是:使用缓存,缓存将 ...
 - drf版本控制 django缓存
		
drf的版本控制 内置的版本控制类 from rest_framework.versioning import QueryParameterVersioning,AcceptHeaderVersion ...
 - linux下清除Squid缓存的方法记录
		
在日常运维工作中,只要用到squid缓存服务,就会常常被要求清理squid缓存.比如公司领导要求删一篇新闻,新闻是生成的静态.运维人员把服务器上静态的新闻页面删除了后,不料代理服务器上缓存还有.缓存服 ...
 - Ajax清除浏览器js、css、图片缓存的方法
		
做东东时都是把图片在服务器的地址存放在数据库里面,然后到浏览器中显示,但是后来发现了两个问题. 第一:为了安全起见,js是无法读取本地的图片的,不然你写一个js,岂不是可以获取任何人电脑里面的文件了. ...
 - jQuery ajax Load关闭缓存的方法
		
[导读] 在jQuery ajax Load关闭缓存的方法很简单,我们只要在$ ajaxSetup中把cache: false就楞以了,当然我们还可以使用一个随机参数来实例了.简单介绍load(url ...
 - 合并多个python list以及合并多个 django QuerySet 的方法
		
在用python或者django写一些小工具应用的时候,有可能会遇到合并多个list到一个 list 的情况.单纯从技术角度来说,处理起来没什么难度,能想到的办法很多,但我觉得有一个很简单而且效率比较 ...
 
随机推荐
- 分布式系统中一些主要的副本更新策略——Dynamo/Cassandra/Riak同时采取了主从式更新的同步+异步类型,以及任意节点更新的策略。
			
分布式系统中一些主要的副本更新策略. 1.同时更新 类型A:没有任何协议,可能出现多个节点执行顺序交叉导致数据不一致情况. 类型B:通过一致性协议唯一确定不同更新操作的执行顺序,从而保证数据一致性 2 ...
 - Python、PIP环境变量的配置
			
Python安装的路径:D:\Python35 pip的环境变量 Python和pip的PATH: PIP下载链接:https://pypi.python.org/pypi/pip 随意解压好,然后C ...
 - 理解RESTful架构(转载)
			
本文转载自:http://www.ruanyifeng.com/blog/2011/09/restful.html 越来越多的人开始意识到,网站即软件,而且是一种新型的软件. 这种"互联网软 ...
 - OC基础--类
			
都是注释哈 类的组成: C语言中函数分为声明和实现 OC中定义一个类也分为声明和实现, 也就是说以后我们在OC中定义类, 就是在写类的声明和实现 编写类的声明和实现: 声明 .h: /* 行为方法: ...
 - c#读取文本文档实践4-读入到list泛型集合计算后写入新文档
			
商品 数量 单价英语 66 100语文 66 80数学 66 100化学 66 40物理 66 60 上面截图是要处理的文本文档内容,目的是计算出总价并加在最后一列. 这一篇与上一篇比较类似,目的相同 ...
 - C#面向对象学习笔记概要
			
1.面向对象不是取代面向过程的. 2.面向对象的三个特性:封装.继承.多态. 3.字段.方法.属性(后面讲)都可以叫做类的成员,他们都需要定义访问级别.访问级别的用处在于控制成员在哪些地方可以被访问, ...
 - web前端基础篇④
			
1.BFC-块级元素-块级格式化上下文布局规则:独立区域,与外部毫不相关内部box会在垂直方向,一个个放置box垂直方向距离由margin决定BFC的区域不会与float box重叠计算BFC高度时, ...
 - 收到远程通知,怎么区分是点击通知栏提醒进去的还是在foreground收到的通知?
			
我现在是要区分点击通知栏的通知进入应用还是点击应用图标进入的,1,开始程序都是在后台.2,接受通知都是在foreground状态.applicationdidFinishLaunchWithOptio ...
 - C++ 基本知識回顧
			
---------------------------------------------------------------------------------------------------- ...
 - Smart210学习记录------linux串口驱动
			
转自:http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=27025492&id=327609 一.核心数据结构 串口驱动有 ...