Django Memcache:比较与设置
在Django用户组中,Tom Evans解释了在Django中如何进行比较和设置,具体方法如下:
You can access the memcached client via django though:
>>> from django.core import cache
>>> c=cache.get_cache('default')
>>> help(c._client.cas)
但是我就是没法让它正常工作。
>>> from django.core import cache
>>> c=cache.get_cache('memcache')
>>> help(c._client.cas)
Traceback (most recent call last):
File "<console>", line 1, in <module>
AttributeError: 'MemcachedCache' object has no attribute '_client'
如果不使用上面提到的方法,我该如何在Django中进行比较和设置呢?
我使用的是Django 1.3版本。
1 个回答
3
在查看源代码后,我在BaseMemcachedCache里发现了这个:
@property
def _cache(self):
"""
Implements transparent thread-safe access to a memcached client.
"""
if getattr(self, '_client', None) is None:
self._client = self._lib.Client(self._servers)
return self._client
所以,我想说,这样做是可行的:
c._cache.cas
试试看,然后告诉我结果!
想了解更多细节,可以查看这个链接: https://code.djangoproject.com/svn/django/trunk/django/core/cache/backends/memcached.py