2011-03-05 4 views
0

저는 일반적으로 작동하는 django-openid-consumer 미들웨어를 사용하여 django를 openid와 함께 사용했습니다. 그러나 Google 앱의 계정을 사용하여 로그인하는 데 문제가있었습니다 (정상적인 Gmail 계정으로 리디렉션됩니다). Google 직원은 adieu-python-openid를 설치하도록 권장했습니다.이 패치에는 Google의 OpenID 어둡게 처리하는 패치가 들어 있습니다. 어쨌든,이 버전의 openid를 설치 한 후에 버전 불일치가 발생합니다. 내가 아는 버전은 .py로 선언되어 있습니다. 수업 중에도 선언해야합니까?adieu의 openid 패치가 django-openid-consumer의 불일치를 초래합니다.

Environment: 

Request Method: GET 
Request URL: http://innovationsimple.net/testapp/openid/complete/?janrain_nonce=2011-03-05T15%3A27%3A04Zx26tny&openid.ns=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0&openid.mode=id_res&openid.op_endpoint=https%3A%2F%2Fwww.google.com%2Faccounts%2Fo8%2Fud&openid.response_nonce=2011-03-05T15%3A27%3A08Zk4PS-g2XYczSVw&openid.return_to=http%3A%2F%2Finnovationsimple.net%2Ftestapp%2Fopenid%2Fcomplete%2F%3Fjanrain_nonce%3D2011-03-05T15%253A27%253A04Zx26tny&openid.assoc_handle=AOQobUcnYBDagAx3JaBN3y5YODDaZqypJ1Se-IZTcZwnbmSk65JH2VV2&openid.signed=op_endpoint%2Cclaimed_id%2Cidentity%2Creturn_to%2Cresponse_nonce%2Cassoc_handle%2Cns.ext1%2Cext1.mode%2Cext1.type.email%2Cext1.value.email&openid.sig=XG5sa7SwTMptLa2LOMqt5sNS9x0%3D&openid.identity=https%3A%2F%2Fwww.google.com%2Faccounts%2Fo8%2Fid%3Fid%3DAItOawku4cndu1aLsJt3DcI4yKyFPMU2JoOeggA&openid.claimed_id=https%3A%2F%2Fwww.google.com%2Faccounts%2Fo8%2Fid%3Fid%3DAItOawku4cndu1aLsJt3DcI4yKyFPMU2JoOeggA&openid.ns.ext1=http%3A%2F%2Fopenid.net%2Fsrv%2Fax%2F1.0&openid.ext1.mode=fetch_response&openid.ext1.type.email=http%3A%2F%2Faxschema.org%2Fcontact%2Femail&openid.ext1.value.email=strattonbrazil%40gmail.com 
Django Version: 1.2.5 
Python Version: 2.4.3 
Installed Applications: 
['django.contrib.auth', 
'django.contrib.contenttypes', 
'django.contrib.sessions', 
'staticfiles', 
'django_openid_consumer', 
'django.contrib.admin', 
'django.contrib.admindocs', 
'crm'] 
Installed Middleware: 
('django.middleware.common.CommonMiddleware', 
'django.contrib.sessions.middleware.SessionMiddleware', 
'django_openid_consumer.middleware.OpenIDMiddleware', 
'django.middleware.csrf.CsrfViewMiddleware') 


Traceback: 
File "/usr/lib/python2.4/site-packages/django/core/handlers/base.py" in get_response 
    100.      response = callback(request, *callback_args, **callback_kwargs) 
File "/usr/lib/python2.4/site-packages/django_openid_consumer-0.1.1-py2.4.egg/django_openid_consumer/views.py" in complete 
    154.   return on_success(request, openid_response.identity_url, openid_response) 
File "/usr/lib/python2.4/site-packages/django_openid_consumer-0.1.1-py2.4.egg/django_openid_consumer/views.py" in default_on_success 
    172.  request.session['openids'].append(from_openid_response(openid_response)) 
File "/usr/lib/python2.4/site-packages/django_openid_consumer-0.1.1-py2.4.egg/django_openid_consumer/util.py" in from_openid_response 
    123.   if openid.__version__ < '2.1.0': 

Exception Type: AttributeError at /openid/complete/ 
Exception Value: O 

OpenID instance has no attribute '__version__' 

답변

0

openid의 이전 버전 용 패치가 작성되었을 수 있습니다. 사용중인 모델이 모델을 변경했을 수 있습니다.

관련 문제