django_graphene在错误的位置寻找软件包“ six”?

时间:2019-10-14 19:20:23

标签: django six graphene-django

我正在尝试使用graphene-django,并且“ six”软件包有一些问题。它已安装,但作为其自己的软件包安装,graphene-django似乎在django.utils下期望它

  File "C:\Users\mjnic\.virtualenvs\phoenix-demo-C42C_PgQ\lib\site-packages\graphene_django\settings.py", line 18, in <module>
    from django.utils import six
ImportError: cannot import name 'six' from 'django.utils' (C:\Users\mjnic\.virtualenvs\phoenix-demo-C42C_PgQ\lib\site-packages\django\utils\__init__.py)

六个路径:

>>> import six
>>> print(six.__file__)
C:\Users\mjnic\.virtualenvs\phoenix-demo-C42C_PgQ\lib\site-packages\six.py

我已经检查了graphene_django的来源,在settings.py中,它似乎正在专门查看django路径。

This module provides the `graphene_settings` object, that is used to access
Graphene settings, checking for user settings first, then falling
back to the defaults.
"""
from __future__ import unicode_literals

from django.conf import settings
from django.test.signals import setting_changed
from django.utils import six

我正在使用pipenv来管理我的环境,并且我已经卸载并重新安装了六个,现在多次尝试使用各种石墨烯软件包进行整理,但无济于事。

因此,我该如何移动six的安装使其位于django.utils.six,或者更改设置以使graphene-django改为查看当前已安装的位置(似乎可能看一下来源)?

1 个答案:

答案 0 :(得分:0)

经过无奈,我找到了答案。我的Pipfile实际上指定了Django = "*"(是的,我知道...),看来six已从版本3的django.utils中删除。将版本指定为{ {1}}和降级似乎已经解决了我的问题!

有关石墨烯-django的问题报告,请参见此处。对于其他面临相同问题的人来说可能很方便。

https://github.com/graphql-python/graphene-django/issues/771