0

我正在使用 Django Cache 来缓存某些页面。我正在使用 @vary_on_cookie 装饰器来允许登录的用户缓存特定的用户详细信息。但是我需要清除特定页面的特定用户的缓存。

即我需要一种方法来生成与 django 中间件缓存生成密钥相同的密钥,使用 cookie 和路径等。然后我可以使用低级缓存自己清除特定条目。

我该怎么做呢?

4

1 回答 1

1

您正在寻找的功能位于django.middleware.cache

>>> from django.middleware.cache import get_cache_key as gk
>>> help(gk)

将返回以下内容:

get_cache_key(request, key_prefix=None, method='GET', cache=None)
    Returns a cache key based on the request path and query. It can be used
    in the request phase because it pulls the list of headers to take into
    account from the global path registry and uses those to build a cache key
    to check against.

KEY_FUNCTION请记住,您可以通过手动设置变量来定义自己的密钥生成机制 。

于 2012-04-29T13:08:59.927 回答