1

python-social-auth을 Django 1.9 및 Python 3과 함께 사용하려고합니다. 필요한 모든 요구 사항을 설치했으며, 내 settings.py에 필요한 모든 설정이 있어야합니다.Django와 Python-Social-Auth : ImportError : 'openid.association'모듈이 없습니다

Unhandled exception in thread started by <function check_errors.<locals>.wrapper at 0x7f6fe7ea5a60> 
Traceback (most recent call last): 
    File "/home/ethan/.virtualenvs/flywithme/lib/python3.5/site-packages/django/utils/autoreload.py", line 226, in wrapper 
    fn(*args, **kwargs) 
    File "/home/ethan/.virtualenvs/flywithme/lib/python3.5/site-packages/django/core/management/commands/runserver.py", line 109, in inner_run 
    autoreload.raise_last_exception() 
    File "/home/ethan/.virtualenvs/flywithme/lib/python3.5/site-packages/django/utils/autoreload.py", line 249, in raise_last_exception 
    six.reraise(*_exception) 
    File "/home/ethan/.virtualenvs/flywithme/lib/python3.5/site-packages/django/utils/six.py", line 685, in reraise 
    raise value.with_traceback(tb) 
    File "/home/ethan/.virtualenvs/flywithme/lib/python3.5/site-packages/django/utils/autoreload.py", line 226, in wrapper 
    fn(*args, **kwargs) 
    File "/home/ethan/.virtualenvs/flywithme/lib/python3.5/site-packages/django/__init__.py", line 18, in setup 
    apps.populate(settings.INSTALLED_APPS) 
    File "/home/ethan/.virtualenvs/flywithme/lib/python3.5/site-packages/django/apps/registry.py", line 108, in populate 
    app_config.import_models(all_models) 
    File "/home/ethan/.virtualenvs/flywithme/lib/python3.5/site-packages/django/apps/config.py", line 202, in import_models 
    self.models_module = import_module(models_module_name) 
    File "/home/ethan/.virtualenvs/flywithme/lib/python3.5/importlib/__init__.py", line 126, in import_module 
    return _bootstrap._gcd_import(name[level:], package, level) 
    File "<frozen importlib._bootstrap>", line 986, in _gcd_import 
    File "<frozen importlib._bootstrap>", line 969, in _find_and_load 
    File "<frozen importlib._bootstrap>", line 958, in _find_and_load_unlocked 
    File "<frozen importlib._bootstrap>", line 673, in _load_unlocked 
    File "<frozen importlib._bootstrap_external>", line 662, in exec_module 
    File "<frozen importlib._bootstrap>", line 222, in _call_with_frames_removed 
    File "/home/ethan/.virtualenvs/flywithme/lib/python3.5/site-packages/social/apps/django_app/default/models.py", line 9, in <module> 
    from social.storage.django_orm import DjangoUserMixin, \ 
    File "/home/ethan/.virtualenvs/flywithme/lib/python3.5/site-packages/social/storage/django_orm.py", line 5, in <module> 
    from social.storage.base import UserMixin, AssociationMixin, NonceMixin, \ 
    File "/home/ethan/.virtualenvs/flywithme/lib/python3.5/site-packages/social/storage/base.py", line 12, in <module> 
    from openid.association import Association as OpenIdAssociation 
ImportError: No module named 'openid.association' 

하나는 내 검색에서 발견 제안 :

ImportError: No module named 'openid.association' 

전체 역 추적은 다음과 같다 : 내가 마이그레이션을 실행하거나 장고 dev에 서버를 실행하려고 할 때, 나는 다음과 같은 오류가 발생합니다 python-openid을 제거하고 python3-openid을 설치하는 것이 었습니다. 이것은 나를 위해 작동하지 않았다. ImportErrorpython-social-auth과 관련된 여러 게시물을 보았지만 나에게 적합한 솔루션을 찾지 못했습니다. 내가 잘못 구성했거나 뭔가를 구성하지 못했다고 가정하지만, 나는 무엇을 확신 할 수 없다. 여기서 내가 뭘 잘못하고 있니?

답변

3

난 그냥 (파이썬 3.5, 장고 1.9.8)를 동일한 문제를 가지고 실제로 파이썬 오픈 ID의 모든 버전을 제거하고 이후 을 제거하고 파이썬 - 사회 - 인증을 다시 설치하여이 문제를 해결할 수 있습니다.

python-openid를 계속 사용할 수있는 반면 PSA를 설치할 때 문제가있는 것으로 보입니다. 모두이므로 python-openid와 python3-openid를 모두 제거한 다음 을 제거하고 PSA도 제거하고 다시 설치하십시오.. 로그에서 PSA와 함께 python3-openid가 설치되어 있어야합니다. 그렇게 한 후에는 문제없이 모든 마이그레이션을 적용 할 수있었습니다.

resp. python3-openid를 설치하지 않으면 pip install git+https://github.com/omab/python-social-auth.git을 사용하여 git에서 PSA를 설치할 수도 있습니다. 분명히 비슷한 문제가 1 년 전에 만난 사람을 도왔습니다 (https://github.com/omab/python-social-auth/issues/588).

희망이 있습니다.

+0

답변 해 주셔서 감사합니다. 나는 django-allauth 대신 http://www.intenct.nl/projects/django-allauth/를 사용하여이 문제를 "해결"했다. 지금까지이 도서관을 많이 좋아합니다. – elethan

+0

또는 그냥 :'pip install --ignore-installed python-social-auth'. – Palasaty

관련 문제