【问题标题】:Django Celery causes an import error on runserver commandDjango Celery 在 runserver 命令上导致导入错误
【发布时间】:2011-04-30 07:46:38
【问题描述】:

当我发出 runserver 命令时,会从 djcelery (Django Celery) 引发 ImportError。

% python manage.py runserver                                                                                                            
~/Workspace/django-projects/no-labels/src
Validating models...
Unhandled exception in thread started by <function inner_run at 0x1ef7320>
Traceback (most recent call last):
  File "/home/damon/Workspace/django-projects/no-labels/env/lib/python2.6/site-packages/django/core/management/commands/runserver.py", line 48, in inner_run
    self.validate(display_num_errors=True)
  File "/home/damon/Workspace/django-projects/no-labels/env/lib/python2.6/site-packages/django/core/management/base.py", line 249, in validate
    num_errors = get_validation_errors(s, app)
  File "/home/damon/Workspace/django-projects/no-labels/env/lib/python2.6/site-packages/django/core/management/validation.py", line 28, in get_validation_errors
    for (app_name, error) in get_app_errors().items():
  File "/home/damon/Workspace/django-projects/no-labels/env/lib/python2.6/site-packages/django/db/models/loading.py", line 146, in get_app_errors
    self._populate()
  File "/home/damon/Workspace/django-projects/no-labels/env/lib/python2.6/site-packages/django/db/models/loading.py", line 64, in _populate
    self.load_app(app_name)
  File "/home/damon/Workspace/django-projects/no-labels/env/lib/python2.6/site-packages/django/db/models/loading.py", line 78, in load_app
    models = import_module('.models', app_name)
  File "/home/damon/Workspace/django-projects/no-labels/env/lib/python2.6/site-packages/django/utils/importlib.py", line 35, in import_module
    __import__(name)
  File "/home/damon/Workspace/django-projects/no-labels/env/lib/python2.6/site-packages/djcelery/models.py", line 14, in <module>
    from celery.app import default_app
ImportError: No module named app

在 python 控制台中手动尝试导入 celery.app.default_app 时也会出现同样的问题:

>>> from celery.app import default_app
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named app

【问题讨论】:

  • 我们可以假设您使用的 celery 版本足够新,可以拥有 celery.app
  • 哈!请以答案的形式重新发布您的问题,以便我将其标记为解决方案。从 github 安装最新的主干构建后,它可以工作了。

标签: python django celery importerror


【解决方案1】:

celery.app 仅在 9 月 14 日添加。您需要运行从那时起发布的 celery 副本。

【讨论】:

    猜你喜欢
    • 2013-10-13
    • 1970-01-01
    • 2023-03-26
    • 1970-01-01
    • 2020-01-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多