2011-07-26 4 views
0

)를 걸 구글 인증과 (의 Oauth 2.0) 장고 - 사회적 인증과 점점 오류예외 값 : NoReverseMatch를 잡았다 동안 렌더링 : 인수와 함께 '시작'에 대한 역 '(-OAuth2를 u'google' '

Django Version: 1.3 
Exception Type: TemplateSyntaxError 
Exception Value:  
Caught NoReverseMatch while rendering: Reverse for 'begin' with arguments '(u'google-oauth2',)' and keyword arguments '{}' not found. 
Exception Location: /usr/local/lib/python2.6/site-packages/django/template/defaulttags.py in render, line 450 
Python Executable: /usr/local/bin/python 
Python Version: 2.6.6 

템플릿

<a rel="nofollow" href="{% url begin "google-oauth2" %}" ><img src="{{ MEDIA_URL }}social/google.png" id="google"></a> 

url.py 내가 잘못 뭐하는 거지

urlpatterns = patterns('',  
    url(r'', include('social_auth.urls')), 
) 
social_auth.urls 
urlpatterns = patterns('', 
    url(r'^login/(?P<backend>[^/]+)/$', auth, name='begin'), 
    url(r'^complete/(?P<backend>[^/]+)/$', complete, name='complete'), 
    url(r'^associate/(?P<backend>[^/]+)/$', associate, name='associate_begin'), 
    url(r'^associate/complete/(?P<backend>[^/]+)/$', associate_complete, 
     name='associate_complete'), 
    url(r'^disconnect/(?P<backend>[^/]+)/$', disconnect, name='disconnect'), 
) 

?

해결 방법을 찾으십시오.

답변

2

django 1.3에 있습니다. 새 URL 템플릿 태그를 {% load url from future %} (으)로 포함 시켰습니까? 그렇다면 url 태그 구문이 잘못되어 {% url 'begin' 'google-oauth2'%}이 (가) 필요합니다. 그렇지 않으면 구문이 정확합니다.

social_auth.urls가 올바르게 포함되었는지 확인 했습니까? 이렇게하려면 (디버그 사용) 수동으로 http://yourdevserver/login/google-oauth2/으로 이동하여 404 페이지가 표시되지 않도록하십시오. 당신이한다면 당신은 URL이 시도 된 곳을 볼 수있을 것이며, URL을 수정하는 방법에 대한 방향을 제시해야합니다.

+0

'social_auth.urls'를 추가하면 나를 위해 문제가 해결되었습니다. –

관련 문제