Werkzeug-0.9.4 и python3_memcached-1.51 не работают на Python 3.4
Я использую werkzeug.contrib.cache.MemcachedCache
с python3_memcached-1.51, когда я пытаюсь получить \ установить данные, я получаю следующую ошибку: memcache.MemcachedKeyTypeError: Key must be str()'s
здесь: https://github.com/eguven/python3-memcached/blob/master/memcache.py
if not isinstance(key, str):
raise Client.MemcachedKeyTypeError("Key must be str()'s")
Тип ключа bytes
не str
, Поэтому я проверил глубже.
внутри werkzeug.contrib.cache.MemcachedCache
ключ закодирован в bytes
(в Python3) вот так:
if isinstance(key, text_type):
key = key.encode('utf-8')
https://github.com/mitsuhiko/werkzeug/blob/master/werkzeug/contrib/cache.py
Как правильно исправить это? Обезьяна патч?
1 ответ
Решение
Исправление заключается в обновлении до Werkzeug 0.10: https://github.com/mitsuhiko/werkzeug/commit/94bea60a1b8e26b586dcd7bc75b162a9909696a3