Django cache cache.set Ne stocke pas les données

Quand je cours
python manage.py shell

, puis:


from django.core.cache import cache
cache.set/"stack","overflow",3000/
print cache.get/"stack"/

/output: / None


J'ai essayé de redémarrer memcache, Et c'est ce qui est dans mes paramètres:


CACHES = { 
'default' : {
'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
'LOCATION' : '127.0.0.1:11211',
}
}
Invité:

Hannah

Confirmation de:

Assurez-vous qu'il utilise le cache correct. Essayer
from django.core.cache import caches

, et ensuite regarder le contenu
caches.all//

. Il ne doit avoir qu'un seul copie
django.core.cache.backends.memcached.MemcachedCache

.

Si tel est le cas, essayez d'y accéder directement, par exemple


from django.core.cache import caches 
m_cache = caches.all//[0]
m_cache.set/"stack","overflow",3000/
m_cache.get/"stack"/


Cela peut ne pas résoudre votre problème, mais au moins vous rapprocher du débogage Memcached Au lieu d'un serveur proxy en banque Django ou votre configuration.

Alice

Confirmation de:

je pense que django complète la version clé. Par exemple,


django_memcache.set/'my_key', 'django', 1000/


Mettre la clé
:1:my_key

dans memcache:


<36 set :1:my_key 0 1000 6
>36 STORED


Cependant, si vous définissez la clé à travers telnet ou module python-memcached, Il sauvera la clé brute, comme prévu:


<38 set my_key 0 1000 13 
>38 STORED


Alors, peut-être que vous ne demandez pas la bonne clé?

Cm
https://docs.djangoproject.com ... ation

Pour répondre aux questions, connectez-vous ou registre