1

django.core.cache.backends.locmem.LocMemCache を使用すると、次のように機能しました。

key = cache.make_key('foo')
cache.validate_key(key) 
t = cache._expire_info.get(key)

しかし、それはdjango.core.cache.backends.memcached.MemcachedCacheで壊れます

エラーが表示されます: 「MemcachedCache」オブジェクトには属性「_expire_info」がありません

指定されたキーの有効期限を取得するユニバーサルまたは memcached 固有の方法はありますか?

4

4 に答える 4

2

残念ながら、それは不可能です。Djangoを使用LocMemCacheすると、キーとその有効期限が管理されるため、情報を利用できます。一方、memcached を使用すると、Django はキーを追跡しません。

この情報は mamcached Python API からも入手できないため、この情報にアクセスしたい場合は、自分で追跡する必要があります (つまり、何かを保存するたびに、すべてのキーの有効期限を追加の辞書に保存します)。 memcached に)。

于 2013-10-08T19:01:06.450 に答える