Django基础013--redis开发
1.redis配置
在settings.py中加入以下代码块,可支持多个redis的配置
1 CACHES = {
2 "default": {
3 "BACKEND": "django_redis.cache.RedisCache",
4 "LOCATION": "redis://127.0.0.1:6379/1",
5 "OPTIONS": {
6 "CLIENT_CLASS": "django_redis.client.DefaultClient",
7 "CONNECTION_POOL_KWARGS": {"max_connections": 100},
8 # "PASSWORD": "dsx", # 密码
9 # 这个redis是返回数据是bytes类型的,登录的时候user用pickle序列化的,存的是二进制,取出来的也是二进制
10 }
11 },
12 "redis2": {
13 "BACKEND": "django_redis.cache.RedisCache",
14 "LOCATION": "redis://127.0.0.1:6379/2",
15 "OPTIONS": {
16 "CLIENT_CLASS": "django_redis.client.DefaultClient",
17 "CONNECTION_POOL_KWARGS": {"max_connections": 100, 'decode_responses': True},
18 # 这个redis配置,从redis里面取到数据后会自动转成字符串,不是bytes类型
19 # "PASSWORD": "HK139bc&*", # 密码
20 }
21
22 }
23 }
2.连接redis服务器
#连接默认的redis
redis = django_redis.get_redis_connection()
#连接指定的redis
redis = django_redis.get_redis_connection('redis2')#创建redis连接
3.新增
1 class Login(View):
2 def post(self,request):
3 '''
4 1.验证前端传递的值是否符合规则,forms
5 2.登录成功后需要有标识,标识token存在redis
6 :param request:
7 :return:
8 '''
9 form_obj = forms.LoginForm(request.POST)
10 if form_obj.is_valid():
11 #数据验证通过后,保存token
12 #token生成规则:用户名+时间戳,再md5加密
13 form_data = form_obj.cleaned_data
14 username = form_data.get('username')
15 user = form_data.get('user')
16 token = tools.md5('%s%s'%(username,time.time()))
17 redis = django_redis.get_redis_connection()#创建redis连接
18 redis.set(const.SESSION+token,pickle.dumps(user),const.EXIT_TIME)
19 return NbResponse(token=token,user=user.name,user_id=user.id)
20 else:
21 return NbResponse(-1,form_obj.error_formate)
4.获取数据
redis = django_redis.get_redis_connection()
b_data = redis.get(const.SESSION+token)
5.删除数据
redis = django_redis.get_redis_connection()
redis.delete(const.SESSION+request.token)
Django基础013--redis开发的更多相关文章
- Django基础012--接口开发
全局参数(get,post,put,delete) 接口:/api/parameter GET:获取全局参数的所有数据 POST:创建全局参数 PUT:更新全局参数 DELETE:删除全局参数 1.创 ...
- python的django基础篇
一.Django基础 Django 是用Python开发的一个免费开源的Web框架,可以用于快速搭建高性能,优雅的网站! Django的特点: 强大的数据库功能:拥有强大的数据库操作接口(QueryS ...
- python3之Django基础篇
一.Django基础 Django 是用Python开发的一个免费开源的Web框架,可以用于快速搭建高性能,优雅的网站! Django的特点: 强大的数据库功能:拥有强大的数据库操作接口(QueryS ...
- 基础拾遗------redis详解
基础拾遗 基础拾遗------特性详解 基础拾遗------webservice详解 基础拾遗------redis详解 基础拾遗------反射详解 基础拾遗------委托详解 基础拾遗----- ...
- ASP.NET Redis 开发
文件并发(日志处理)--队列--Redis+Log4Net Redis简介 Redis是一个开源的,使用C语言编写,面向“键/值”对类型数据的分布式NoSQL数据库系统,特点是高性能,持久存储,适应高 ...
- ASP.NET c# Redis 开发
Redis简介 Redis是一个开源的,使用C语言编写,面向“键/值”对类型数据的分布式NoSQL数据库系统,特点是高性能,持久存储,适应高并发的应用场景.Redis纯粹为应用而产生,它是一个高性能的 ...
- Django 基础教程
Django 基础教程 这是第一篇 Django 简介 » Django 是由 Python 开发的一个免费的开源网站框架,可以用于快速搭建高性能,优雅的网站! 你一定可以学会,Django 很简单 ...
- django 简易博客开发 1 安装、创建、配置、admin使用(转)
Django 自称是“最适合开发有限期的完美WEB框架”.本文参考<Django web开发指南>,快速搭建一个blog 出来,在中间涉及诸多知识点,这里不会详细说明,如果你是第一次接触D ...
- 用Python来操作redis 以及在Django中使用redis
什么是Redis? Redis是一款开源的.高性能的键-值存储(key-value store).它常被称作是一款数据结构服务器(data structure server). Redis的键值可以包 ...
- Python学习(二十六)—— Django基础一
转载自:http://www.cnblogs.com/liwenzhou/p/8258992.html 一.Web框架本质 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的 ...
随机推荐
- properties模板
jdbc.driver=com.mysql.jdbc.Driverjdbc.url=jdbc:mysql://localhost:3306/ssmdemo1?useSSL=true&useUn ...
- c++ 各种数据结构的时间空间复杂度
普通线段树 时间 log2(n); 空间 n+log2(n)+log4(n)+log(8)n+.....+logn(n)==n*4; 动态开点线段树 时间 log2(n); 空间 q*log2( ...
- 设计模式Copy-on-write
1.Copy-on-Write 又称COW,写时复制 String的replace()方法,没有修改内部的value数组,而是新创建了一个不可变对象 这种方法在解决不可变对象时,经常使用 这其实就是一 ...
- MLIR中间表示和编译器框架
MLIR中间表示和编译器框架 TensorFlow生态系统包含许多在软件和硬件堆栈的多个级别上运行的编译器和优化器.作为TensorFlow的日常用户,使用不同类型的硬件(GPU,TPU,移动设备)时 ...
- Paddle概述
Paddle概述 本文结合深度学习理论与实践,使用百度飞桨平台实现自然语言处理.计算机视觉及个性化推荐等领域的经典应用. 实践部分使用飞桨深度学习开源框架,适配最新的2.0版本,默认使用动态图编程范式 ...
- 2019个嵌入式市场研究,持续的C/C++优势
2019个嵌入式市场研究,持续的C/C++优势 2019 Embedded Markets Study reflects emerging technologies, continued C/C++ ...
- redis 记一次搭建高可用redis集群过程,问题解决;Node 192.168.184.133:8001 is not configured as a cluster node
------------恢复内容开始------------ 步骤 1:每台redis服务器启动之后,需要将这几台redis关联起来, 2: 关联命令启动之后 报错: Node 192.168.184 ...
- 错误:软件包:php-fpm-5.4.16-42.el7.x86_64 需要:php-common(x86-64)
报错信息:错误:软件包:php-fpm-5.4.16-42.el7.x86_64 (/php-fpm-5.4.16-42.el7.x86_64)需要:php-common(x86-64) = 5.4. ...
- 实验6、Flask API使用示例和拓展
实验介绍 1. 实验内容 Flask 提供了多种API拓展,本节我们主要学习基于RESTful的Flask应用程序设计 2. 实验要点 学习和掌握多种RESTful的设计模式 3.实验环境 Cento ...
- 【VBA】模块更新方法
删除模块,重新导入 1 Sub 更新模块() 2 With ThisWorkbook.VBProject 3 .VBComponents.Remove .VBComponents("模块1& ...