2017-01-01 1388 views
-1

我收到錯誤獲取導入錯誤:無法導入名稱OrderedDict

ImportError: cannot import name OrderedDict

,而我的Ubuntu 14.04機器上安裝本地的服務器。
我曾嘗試手動安裝ordereddict也試圖提升海帶但它仍然給如下─

[email protected]:~/open-event-orga-server$ sudo python create_db.py
Traceback (most recent call last): File "create_db.py", line 5, in
from app import current_app
File "/home/rishav/open-event-orga-server/app/init.py", line 23, in
from celery import Celery
File "/usr/local/lib/python2.7/dist-packages/celery/init.py", line 133, in
from celery import five # noqa File "/usr/local/lib/python2.7/dist-packages/celery/five.py", line 153, in
from kombu.utils.compat import OrderedDict # noqa
ImportError: cannot import name OrderedDict

回答

3

這解決了我的問題:

  1. 降級海帶到2.5.16。

  2. 重新安裝Django的芹菜

這裏是日誌:

(virtualEnv) D:\Project\staging\modone\settings>pip install django-celery 
Collecting django-celery 
    Downloading django_celery-3.2.1-py2-none-any.whl (63kB) 
    100% |################################| 71kB 83kB/s 
Collecting django>=1.8 (from django-celery) 
    Using cached Django-1.10.5-py2.py3-none-any.whl 
Collecting celery<4.0,>=3.1.15 (from django-celery) 
    Downloading celery-3.1.25-py2.py3-none-any.whl (526kB) 
    100% |################################| 532kB 122kB/s 
Requirement already satisfied: pytz>dev in d:\project\installations\virtualenv\lib\site-packages (from celery<4.0,>=3.1.15->django-celery) 
Collecting kombu<3.1,>=3.0.37 (from celery<4.0,>=3.1.15->django-celery) 
    Using cached kombu-3.0.37-py2.py3-none-any.whl 
Collecting billiard<3.4,>=3.3.0.23 (from celery<4.0,>=3.1.15->django-celery) 
    Downloading billiard-3.3.0.23-cp27-none-win32.whl (102kB) 
    100% |################################| 102kB 114kB/s 
Requirement already satisfied: anyjson>=0.3.3 in d:\project\installations\virtualenv\lib\site-packages (from kombu<3.1,>=3.0.37->celery<4.0,>=3.1.15-> 
django-celery) 
Collecting amqp<2.0,>=1.4.9 (from kombu<3.1,>=3.0.37->celery<4.0,>=3.1.15->django-celery) 
    Using cached amqp-1.4.9-py2.py3-none-any.whl 
Installing collected packages: django, amqp, kombu, billiard, celery, django-celery 
    Found existing installation: Django 1.4.5 
    Uninstalling Django-1.4.5: 
     Successfully uninstalled Django-1.4.5 
    Found existing installation: amqp 1.0.13 
    Uninstalling amqp-1.0.13: 
     Successfully uninstalled amqp-1.0.13 
    Found existing installation: kombu 2.5.16 
    Uninstalling kombu-2.5.16: 
     Successfully uninstalled kombu-2.5.16 
    Found existing installation: billiard 2.7.3.28 
    Uninstalling billiard-2.7.3.28: 
     Successfully uninstalled billiard-2.7.3.28 
    Found existing installation: celery 3.0.18 
    Uninstalling celery-3.0.18: 
     Successfully uninstalled celery-3.0.18 
Successfully installed amqp-1.4.9 billiard-3.3.0.23 celery-3.1.25 django-1.10.5 django-celery-3.2.1 kombu-3.0.37 
0

我有海帶4.0.x的Python的2.7.8這個同樣的問題和error.The全面回溯,並將我通過將kombu降級到3.0.x(這是我需要的版本)解決了它。

沒有時間來調查問題的原因,但this可能與...

相關問題