我需要一些帮助来配置我的传单。因为我在django-3.04项目中添加了leaflet,所以我在运行服务器时遇到了这个错误。
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/importlib/__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
File "<frozen importlib._bootstrap>", line 991, in _find_and_load
File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 783, in exec_module
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "/Users/marcusbey/.local/share/virtualenvs/rb-website-fKSjEdfu/src/django-leaflet/leaflet/__init__.py", line 80, in <module>
if DEFAULT_PRECISION is not None and not (isinstance(DEFAULT_PRECISION, six.integer_types) and (4 <= DEFAULT_PRECISION <= 12)):
NameError: name 'six' is not defined 我安装了六个,并将其添加到settings.py文件中,但仍然收到相同的错误。我不知道还能去哪里找,也不知道该怎么办。:/
发布于 2020-06-07 19:03:13
我遵循了这个答案,它终于起作用了。
https://stackoverflow.com/a/61327529/8571945
谢谢你们
发布于 2020-06-07 09:24:49
https://docs.djangoproject.com/en/3.0/releases/3.0/#removed-private-python-2-compatibility-apis曾经和six打包在一起,但是自从Python2的支持被完全移除后,3.0版本就放弃了它:
现在,如果你需要django-leaflet,你可能不得不继续使用Django版本2.2。然而,看起来他们正在支持Django3。
https://github.com/makinacorpus/django-leaflet/commit/844887affe607d3f115920c862f8ea2b45e19ed8
可能值得尝试从这个提交安装到您的虚拟环境中,看看它是否解决了这个问题:
pip install git+https://github.com/makinacorpus/django-leaflet.git@844887affe607d3f115920c862f8ea2b45e19ed8
我尝试将其添加到venv中,它似乎不再需要six。
无论哪种方式,看起来他们都在为Django 3.0发布版本,只是PyPI还没有针对pip install的版本。祝好运!
https://stackoverflow.com/questions/62239259
复制相似问题