ImportError:无法导入名称连接

时间:2016-03-21 05:03:22

标签: django django-haystack whoosh

我想在我的django应用程序中包含全文搜索。我正在使用whoosh-haystack。当我在已安装的应用程序中包含whoosh和haystack,并执行命令./manage.py时,我收到导入错误。任何人都可以解决这个问题。

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'whoosh',
    'haystack',
    'galleryApp',
    'galleryAdmin',
]

我得到的错误是

Traceback (most recent call last):
  File "./manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 353, in execute_from_command_line
    utility.execute()
  File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 327, in execute
    django.setup()
  File "/usr/local/lib/python2.7/dist-packages/django/__init__.py", line 18, in setup
    apps.populate(settings.INSTALLED_APPS)
  File "/usr/local/lib/python2.7/dist-packages/django/apps/registry.py", line 115, in populate
    app_config.ready()
  File "/usr/local/lib/python2.7/dist-packages/django/contrib/admin/apps.py", line 22, in ready
    self.module.autodiscover()
  File "/usr/local/lib/python2.7/dist-packages/django/contrib/admin/__init__.py", line 26, in autodiscover
    autodiscover_modules('admin', register_to=site)
  File "/usr/local/lib/python2.7/dist-packages/django/utils/module_loading.py", line 50, in autodiscover_modules
    import_module('%s.%s' % (app_config.name, module_to_search))
  File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module
    __import__(name)
  File "/usr/local/lib/python2.7/dist-packages/haystack/admin.py", line 13, in <module>
    from haystack import connections
ImportError: cannot import name connections

3 个答案:

答案 0 :(得分:4)

haystack存在冲突django-haystack。 (重新)移动它将解决问题。

有关详细信息,请参阅chat

答案 1 :(得分:1)

检查python __init__.py文件夹中是否有sitepackages/haystack个文件。这可能是由于__init__.py的缺席。 __init__.py具有连接属性。如果没有,请尝试从github源卸载并安装/手动编写__init__.py文件。

答案 2 :(得分:0)

以上对我不起作用。

对我有用的是:

  • pip uninstall haystack

  • pip uninstall django-haystack

  • pip install django-haystack

相关问题