Django と Memcached を使用して、無効にしたい一連のキャッシュがあります。それらをすべて一意のバージョン番号に保存しているので、それらを無効にすることができます。ただし、Django サイトの指示に従うと、ValueError が発生します。
私のバージョン番号は次のようになります: 20991791. したがって、一般的には整数です。
バージョン 20991791 ですべての memcache キーを無効にするにはどうすればよいですか?
参考までに、次のように設定します。
>>> cache.set('laugh',2,version=3)
バージョン番号「3」しか知らないので、バージョン番号3のすべてのキーを削除する必要があります。私は incr_version がこれを行ったと思っていましたが、試してみると値エラーが発生します。
>>> cache.incr_version(3)
Traceback (most recent call last):
File "<console>", line 1, in <module>
File "/opt/virtual-envs/govini-web/lib/python2.6/site-packages/django/core/cache/backends/base.py", line 214, in incr_version
raise ValueError("Key '%s' not found" % key)
ValueError: Key '3' not found