【问题标题】:No module named six没有模块名为六
【发布时间】:2013-04-12 14:25:23
【问题描述】:

安装transifex 和./manage.py 后出现以下错误:

Error: No modules named six.

Python 6 安装在 virtualenv 中(来自https://pypi.python.org/pypi/six) Django 版本是 1.4

任何帮助都会很棒! thx 和最好的问候 迈克尔

【问题讨论】:

  • 当你得到错误时你确定你在你的虚拟环境中。另外,您使用了什么任务?
  • 你可以尝试在 virtualenv 中打开一个 Python shell,然后运行import six 吗?
  • 有没有什么东西试图导入 django.utils.six,但它只存在于 Django >= 1.5 中?
  • 已经完成了。如果我打开外壳,则有到 6 个的正确链接 ->
  • @J. Ghyllebert:是的,在 virtenv 中,我尝试使用 ./manage.py txcreatedirs 启动 transifex 服务器

标签: django six-python


【解决方案1】:

django.utils.six 是在 Django 1.4.2 中添加的,参见

https://docs.djangoproject.com/en/1.5/topics/python3/#philosophy

【讨论】:

  • 嗨,谢谢,但这不起作用。刚刚发现,transifex 仅适用于 django 1.3.1。所以我安装了 django 1.3.1,但同样的错误。 python shell中的“导入六”也没有效果......
  • 能否发回溯,即./manage.py validate --traceback
  • 嗨。同样的错误,它只是说: /usr/local/lib/python2.7/dist-packages/transifex-1.2.1-py2.7.egg/transifex# ./manage.py validate --traceback 错误:无法导入名称六个
  • Traceback 显示 django_filters 引发异常。 Django-filters 需要 Django 1.4.5+,也许你可以尝试安装一些旧版本
  • 先生,您是本周风云人物;)。使用旧版本的 django-filters (0.5.1) 它正在工作!谢谢
【解决方案2】:

我也遇到了同样的问题。似乎 transifex 包中的依赖项未正确列出(它依赖于 Django == 1.3.1 和 django-filter >= 0.1,但 django-filter 0.6 依赖于 Django >= 1.4.5)。

我通过安装旧版本的 django-filter (0.5.4) 解决了问题,而不是使用 pypi 中提供的包(似乎在 pypi 上只有 0.6 和 0.1 版本),而是直接下载 0.5 版本。 4 从这里:

https://github.com/alex/django-filter/releases

然后照常安装:

python setup.py 安装

【讨论】:

  • 备案:这些都是我必须手动安装的 transifex 依赖项(在卸载 pip 自动安装的版本之后),因为那些自动安装的不正确:django-filter==0.5.4 django -haystack==1.2 django-piston==0.2.2
【解决方案3】:

这应该可以解决您的问题:

$ easy_install six

【讨论】:

    猜你喜欢
    • 2012-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-07
    • 2019-03-28
    • 2017-12-30
    相关资源
    最近更新 更多