Django中使用redis

1、所有框架都能用的方式

-先新建一个py文件,生成一个redis连接池;
-需要在哪里用,就把这个py文件导过去;


举例:

在app下新建一个py文件,redis_pool.py:

单独新建的原因是,使用时导过去就行了,如果直接和程序写在一起,那么每次执行程序,都会新建一个连接池,

所以……

image


views.py

from django.shortcuts import render, HttpResponse
from app01.redis_pool import POOL
from redis import Redis



# Create your views here.
def index(request):
    conn = Redis(connection_pool=POOL)
    conn.set('xxx', 'yyy')
    name = conn.get('username')
    return HttpResponse(name)


urls.py

from django.conf.urls import url
from django.contrib import admin
from app01 import views

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^index/', views.index),
]


此时在浏览器中访问 http://127.0.0.1:8000/index

就会现在插入一对key:value ,然后再获取出key为username的值;


2、Django中的专用方式

django提供了一个redis模块:django-redis

项目名不要和模块名一样哦!


安装模块:pip3 install django-redis


然后在settings.py中配置,当把redis作为缓存时,也可以这样配置:

下面用的库是default,我们可以写多个库,比如写两个区域,一个用作缓存,一个用来存数据;

CACHES = {
    "default": {  #default 是一个库名
        "BACKEND": "django_redis.cache.RedisCache",
        "LOCATION": "redis://127.0.0.1:6379",
        "OPTIONS": {
            "CLIENT_CLASS": "django_redis.client.DefaultClient",
            "CONNECTION_POOL_KWARGS": {"max_connections": 100}
            # "PASSWORD": "123",
        }
    }
}


views.py

from django.shortcuts import render, HttpResponse
from django_redis import get_redis_connection
# Create your views here.

def index(request):
    # 这里用的是settings中配置的default
    conn = get_redis_connection('default')
    print(conn.get('xxx'))
    return HttpResponse('ok')


from django.core.cache import cache
原文地址:https://www.cnblogs.com/weiyiming007/p/12534868.html