Django DRF Redis詳細配置

2021-09-23 23:56:14 字數 1408 閱讀 5442

在django rest framework中使用快取,可以通過drf-extensions擴充套件來實現。

關於擴充套件使用快取的文件,可參考鏈結

pip3 install drf-extensions

caches = 

}}rest_framework_extensions =

# ①我們定義乙個cache(本地快取來儲存資訊,cahe指定的是redis

session_engine = "django.contrib.sessions.backends.cache"

# ②指定本地的session使用的本地快取名稱是'default'

session_cache_alias = "default"

drf-extensions擴充套件對於快取提供了三個擴充套件類:

listcacheresponsemixin,用於快取返回列表資料的檢視,與listmodelmixin擴充套件類配合使用,實際是為list方法新增了cache_response裝飾器;

retrievecacheresponsemixin,用於快取返回單一資料的檢視,與retrievemodelmixin擴充套件類配合使用,實際是為retrieve方法新增了cache_response裝飾器;

cacheresponsemixin,為檢視集同時補充list和retrieve兩種快取,與listmodelmixin和retrievemodelmixin一起配合使用(我選擇使用這種)。

三個擴充套件類都是在rest_framework_extensions.cache.mixins中。

from rest_framework_extensions.cache.mixins import cacheresponsemixin

class customerviewset(cacheresponsemixin,mymodelviewset):

# class customerviewset(mymodelviewset):

queryset =customer.objects.all()

serializer_class = customerserializer

filter_backends = (filters.searchfilter,)

search_fields = ('name', 'phone','dialstatu')

重啟服務,訪問customer或者對customer資料進行增刪改查(但是一般將快取設定在經常用到但不容易被更改的資料上-唯讀資料),資料就會寫入redis。

Informatica Update 機制詳解

informatica update 機制詳解 informatica 作為etl工具,update是其很重要的乙個特性。也正因為如此,我們會發現在informatica工具的很多地方都會有update的相關設定,許多時候給大家都造成了很大的迷惑,不知道誰先誰後,誰的優先順序高,或者具體的作用是什麼...

CString string char 比較詳解

關鍵點 主要用於mfc的編寫,而屬於stl,兩者都是符合標準c 的,但是在非 windows平台或者說vc上還是用吧。另外還有乙個這是傳統c 才有的 一 概述 string和cstring均是字串模板類,string為標準模板類 stl 定義的字串類,已經納入c 標準之中 cstring typed...

CString string char 比較詳解

cstring 為visual c 中最常用的字串類,繼承自c stringt類,主要應用在mfc和atl程式設計中,主要資料型別有char 應用於ansi wchar t unicode tchar ansi與unicode均可 char 為c程式設計中最常用的字串指標,一般以 0 為結束標誌 二...