sql >> Base de Datos >  >> NoSQL >> Redis

¿Cómo implementar Redis Cache con Django Rest Framework?

Solo desde lo alto de mi cabeza estás usando @cache_page(CACHE_TTL) en el lugar equivocado y de la manera equivocada.

De acuerdo con los documentos de django, necesita la cache_page el decorador debe estar por encima del método de la clase, no de la clase en sí, y debe estar envuelto en method_decorator .

Sobrescribir ParameterViewSet dispatch de 's como a continuación y debería hacer el trabajo.

@method_decorator(cache_page(CACHE_TTL))
def dispatch(self, *args, **kwargs):
    return super().dispatch(*args, **kwargs)

Documentos:

  • Decorando la clase
  • Uso de caché con apiview y viewsets