栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Redis数据库和项目框架

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Redis数据库和项目框架

1.安装redis 1.下载压缩包

下载地址:https://github.com/tporadowski/redis/releases
备用:https://hub.fastgit.xyz/tporadowski/redis/releases 切记:镜像网站不要登录自己的账号

2.解压缩包,创建一个文件夹,把解好的文件夹放在创的文件夹内 3.配置环境变量

就是把文件的根目录创到环境变量中

4.注册并绑定使用的配置文件
redis-server --service-install 配置文件地址  # 安装服务
redis-server --service-uninstall  # 卸载服务
5.启动server程序
redis-server --service-start # 启动redis服务器
redis-server --service-stop # 停止redis服务器
6.重启redis服务器 redis五大数据类型
  1. String 字符串类型
  2. List 列表
  3. Hash 哈希 guns={‘name’:‘haha’}
  4. Set 无序列表
  5. Zset 有序列表 默认从小到大
通用命令
select 2 # 切换到2库 默认为0,可选0-15 有16个库
keys * # 查询所有的键
exists name # 确认键是否存在
type name # 查看键的类型
rename key newkey # 修改键名
del name # 删除键
flushdb # 清空当前库
flushall # 清空所有库
常用命令 String类型 1.数据库写法
# 增
set key value # 创建一个key-value
mset key1 value1 key2 value2... # 同时创建多个
set key value ex 10 # 设置有效期
set key value nx # 当key不存在,才会存入

# 查
get key # 查看一个key的值
mget key1 key2.. # 获取
strlen key1 #获取key长度

# 改
set key newvalue  # 修改key的值
mset key1 newvalue1 key2 newvalue2..# 多个修改
# 修改字符串的一部分,从位置1开始修改字符,以asdv覆盖
setrange key 1 asdv
append key value  # 追加

# string有特殊数字
incr key # 自增1
decr key # 自减1
incrby key 5 # 自增  5
decrby key 5 # 自减  5
2.python写法
import redis
# db 不写默认为0 没有密码可以不写 host写127.0.0.1快一点
r = redis.Redis(host='127.0.0.1',port=6379,password='123123',db=0)
r.set("name","haha")
r.mset({"name":"haha","age":23})

# 获取key值
r.get("name") # 返回字符串
r.mget("name","age") # 返回值列表

# 设置过期时间
r.set("name","haha",ex=10)
# 不存在时创建
r.set("name","haha",nx=True)

# 获取字符串长度,int
r.strlen("name") 
Set类型(无序列表,无序集合)
# 增
sadd key value1 value2 value3

# 查
smembers key # 查所有人员
scard key # 查当前房间多少玩家
sismember key value # 判断value是否加入游戏

# 改
srem key value1 value2 # 吧value1,value2移除
Zset类型(有序集合)
# 增
zadd guns 30 ak47 47 dp28 100 m247

# 查
zrange guns 0 -1 # 查看guns,从小到大排序
zrevrange guns 0 -1 # 从大到小

zrangebyscore guns (40 100 # 在(40-100]之间所有枪械
zrangebyscore guns 30 100 limit 2 1 withscores # 30-100之间的枪械 分页,每页1条,第三页
zrevrangebyscore guns 100 40 # 查看弹容量在(40-100]之间的所有枪械
zrevrangebyscore guns 100 30  limit 2 1 withscores # 分页,每页1条,第三页

zcard guns # 查看系统中枪的种类数
zcount guns (20 50 # 获取(20-50] 区间内的所有枪械数

zrank guns dp28 # 按照从小到大,查看排名 
zrevrank guns dp28 # 按照从大到小

zscore guns ak47 # 查看弹容量

# 改
zincrby guns 20 m247 # 给m247枪增加20发子弹
zincrby guns -20 m247 # 给dp28 减少20发子弹

zrem guns ak47 ... # 按照字符串来移除元素,可同时多个
zremrangebyrank guns 1 2 # 按照弹容量排名  0-3 区间内的元素移除
zremrangebyscore guns 0 40 # 把弹容量小于40发的,全部删除掉
Hash类型

Hash是一个string类型的field(字段)和value(值)映射表,适合用于存储字典

# 插入 键和字段存在时,属于更新
hset key field value # 单个
hmset key field1 value1 field2 value2 # 多个

# 增
hincrby key field number # 为指定字段的整数值加上增量

# 查
hget key field #指定字段的值
hgetall key # 获取所有字段和值
hkeys key  #获取所有的字段
hvals key   #获取所有的值

# 删
hdel key field1 [field2] # 删除一个或多个哈希字段, 返回删除的个数
List类型

是简单的字符串列表

# 插
lpush key val1 val2 # 从左边插入
rpush key val1 val2 # 从右边插

# 更新
lset key index val # 修改某个下标的值

# 删
lpop key # 删除左边第一个值, 并立即返回该值
rpop key # 删除右边第一个值, 并立即返回该值

#列表为空时,阻塞的删除
blpop  mylist  10
brpop mylist 10

lrem key count value # 返回的是删除的个数,删除指定的值

ltrim key start stop # 截取数据
lrange key start stop # 返回指定区间内的内容
llen key  #获取列表的长度
2.项目架构 1.设置虚拟环境

虚拟环境不会污染系统默认的python环境

# 创建虚拟环境
python -m venv myvenv
# 激活虚拟环境
myvenv/Scripys/activate


在虚拟环境中,安装使用的包

pip install -r requirements.txt
2.创建django项目

注:

  1. 项目不要放在C盘
  2. 路径不能有汉字
  3. 版本 Django 3.2.X

1.创建django项目

django-admin startproject 项目名

2.打开项目,配置创建的虚拟环境



点击add


出现venv目录,就代表虚拟环境创建成功

如何进入虚拟环境
在控制台

cd venv/scripts # 进入scripts目录
activate # 激活虚拟环境

如何退出虚拟环境

cd venv/scripts # 进入scripts目录
deactivate.bat # 执行退出命令
3.配置跨域 1.安装跨域的库
 pip install django-cors-header
2.注册子应用
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'rest_framework',  # drf框架
    'corsheaders',     # 跨域
    'users',           # 子应用
]
3.注册中间件
MIDDLEWARE = [
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
    'corsheaders.middleware.CorsMiddleware',  # 跨域中间件
]
4.设置配置项
# 配置跨域相关的配置项
CORS_ORIGIN_WHITELIST = [  # 配置ip白名单
    "http://127.0.0.1:8080",
    "http://localhost:8080",
    "http://127.0.0.1:8000",
]
CORS_ALLOW_CREDENTIALS = True  # 允许cookie
CORS_ALLOW_METHODS = ("*")     # 配置允许的请求方式
CORS_ALLOW_HEADERS = ("*")     # 配置允许的请求头
4.运行前端项目

讲vue项目拖到一个新文件中,打开小黑框

npm install

运行

npm run dev
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/928567.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号