Redis 是一個 key-value 存儲系統,經常使用於緩存的存儲。django-redis 基於 BSD 許可, 是一個使 Django 支持 Redis cache/session 後端的全功能組件.javascript
安裝 django-redis 最簡單的方法就是用 pip :html
pip install django-redis
爲了使用 django-redis , 你應該將你的 django cache setting 改爲這樣:java
CACHES = { "default": { "BACKEND": "django_redis.cache.RedisCache", "LOCATION": "redis://127.0.0.1:6379/1", "OPTIONS": { "CLIENT_CLASS": "django_redis.client.DefaultClient", } } }
爲了更好的互操做性並使鏈接字符串更加 「標準」, 從 3.8.0 開始 django-redis 使用 redis-py native url notation 做爲鏈接字符串.redis
redis://[:password]@localhost:6379/0 rediss://[:password]@localhost:6379/0 unix://[:password]@/path/to/socket.sock?db=0
支持三種 URL scheme :sql
Django 默承認以使用任何 cache backend 做爲 session backend, 將 django-redis 做爲 session 儲存後端不用安裝任何額外的 backenddjango
SESSION_ENGINE = "django.contrib.sessions.backends.cache" SESSION_CACHE_ALIAS = "default"
好了,如今鏈接和配置都已經完成了,那麼在項目中該如何使用呢?接下來看下面這段例子吧。json
from django.conf import settings from django.core.cache import cache #read cache user id def read_from_cache(self, user_name): key = 'user_id_of_'+user_name value = cache.get(key) if value == None: data = None else: data = json.loads(value) return data #write cache user id def write_to_cache(self, user_name): key = 'user_id_of_'+user_name cache.set(key, json.dumps(user_name), settings.NEVER_REDIS_TIMEOUT)
經過上面的這兩個方法就能夠實現對redis的讀取操做了,只須要將須要的字段當參數傳入到方法中就行了。後端