0

我正在尝试使用graphene-django,并且“六”包有一些问题。它已安装,但它是作为自己的包安装的,并且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

4

1 回答 1

1

在经历了很多挫折之后,我找到了答案。我Pipfile实际指定的Django = "*"(是的,我知道...),并且似乎six已从django.utils版本 3 中删除。将版本指定为<3.0并降级似乎已经为我解决了这个问题!

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

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

于 2019-10-15T13:39:42.793 回答