djang-celery运行时出现AttributeError("'str' object has no attribute 'items'",)
版本号:django-celery==3.3.1,celery==3.1.25
错误显示:
File "c:\users\lx\.virtualenvs\env1-flvzepon\lib\site-packages\kombu\transport\redis.py", line 146, in append
pipe.zadd(self.unacked_index_key, delivery_tag, time()) \
File "c:\users\lx\.virtualenvs\env1-flvzepon\lib\site-packages\redis\client.py", line 2685, in zadd
for pair in iteritems(mapping):
File "c:\users\lx\.virtualenvs\env1-flvzepon\lib\site-packages\redis\_compat.py", line 159, in iteritems
return iter(x.items())
AttributeError: 'str' object has no attribute 'items'
解决办法:
进入c:\users\lx\.virtualenvs\env1-flvzepon\lib\site-packages\kombu\transport\redis.py
修改146行:
pipe.zadd(self.unacked_index_key, delivery_tag, time())
修改为:
pipe.zadd(self.unacked_index_key, {delivery_tag: time()})
重新输入指令:
celery worker -A djangoProject -l debug
发现可以正常运行

浙公网安备 33010602011771号