我正在使用Django 1.7和python 3.4。 我正在尝试使用django-allauth进行用户身份验证,我正在关注此链接http://www.sarahhagstrom.com/2013/09/the-missing-django-allauth-tutorial/ 但是在尝试迁移应用程序时遇到了这个问题。
Traceback (most recent call last):
File "C:\Python34\lib\site-packages\django\apps\config.py", line 118, in creat
e
cls = getattr(mod, cls_name)
AttributeError: 'module' object has no attribute 'sitesallauth'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "manage.py", line 10, in <module>
execute_from_command_line(sys.argv)
File "C:\Python34\lib\site-packages\django\core\management\__init__.py", line
385, in execute_from_command_line
utility.execute()
File "C:\Python34\lib\site-packages\django\core\management\__init__.py", line
354, in execute
django.setup()
File "C:\Python34\lib\site-packages\django\__init__.py", line 21, in setup
apps.populate(settings.INSTALLED_APPS)
File "C:\Python34\lib\site-packages\django\apps\registry.py", line 85, in popu
late
app_config = AppConfig.create(entry)
File "C:\Python34\lib\site-packages\django\apps\config.py", line 123, in creat
e
import_module(entry)
File "C:\Python34\lib\importlib\__init__.py", line 109, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 2254, in _gcd_import
File "<frozen importlib._bootstrap>", line 2237, in _find_and_load
File "<frozen importlib._bootstrap>", line 2224, in _find_and_load_unlocked
ImportError: No module named 'django.contrib.sitesallauth'
问题的可能原因和解决方案是什么。
答案 0 :(得分:11)
您在INSTALLED_APPS中的“django.contrib.sites”条目后缺少逗号。
答案 1 :(得分:3)
好像您忘了在django.contrib.sites
和allauth
应用之间添加逗号。
答案 2 :(得分:0)
没有sitesallauth
这样的模块,它应该是allauth
,例如
INSTALLED_APPS = (
# ...
'django.contrib.allauth',
)
然后通过pip安装:
pip install allauth
对于Python 3,您可能需要使用pip3
。
简单测试:
$ python3
>>> import django
>>> from django.contrib import auth
>>> from django.contrib import allauth
# If it fails, check if your `sys.path` is correct.
>>> import sys
>>> sys.path