Commit d88215f3 authored by Mark Ng's avatar Mark Ng

encode/decode base64 - you can't throw direct pickles at redis-py, because it…

encode/decode base64 - you can't throw direct pickles at redis-py, because it tries to treat them like unicode.
parent 7a33ea14
......@@ -30,9 +30,6 @@ class CacheClass(BaseCache):
"""
_key = self._prepare_key(key)
_value = self._prepare_key(value)
if self._cache.exists(_key):
return False
......@@ -57,7 +54,7 @@ class CacheClass(BaseCache):
value = smart_str(value)
# hydrate that pickle
value = pickle.loads(value)
value = pickle.loads(value.decode('base64'))
if isinstance(value, basestring):
return smart_unicode(value)
......@@ -71,7 +68,7 @@ class CacheClass(BaseCache):
value = self._prepare_value(value)
# pickle the value
value = pickle.dumps(value)
value = pickle.dumps(value).encode('base64')
# store the key/value pair
result = self._cache.set(key, value)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment