1

我只想制作一个页面,该页面具有使用 django-social-auth 登录到 twitter/facebook/google 的链接。

但我得到一个错误NoReverseMatch: Reverse for '' with arguments '(u'twitter',)' and keyword arguments '{}' not found.

  def index(request):
        ctx = {}
        return render_to_response('index_before_login.html', {}, RequestContext(request))

index_before_login.html 如下

<li><a href="{% url socialauth_begin 'twitter' %}">Enter using Twitter</a></li>

urls.py 如下

 urlpatterns = patterns('',
        url(r'^$', 'lebabcartoon.views.index'),
        #url(r'^socialauth_', 'lebabcartoon.views.index'),
        url('', include('social_auth.urls')),

我的环境是 Django ver1.5 Python 版本:2.7.3 django-social-auth:0.7.5

有任何想法吗?

4

3 回答 3

1

将 url 名称用引号括起来

{% url 'socialauth_begin' 'twitter' %}
于 2012-10-05T19:46:42.643 回答
1

使用新的 python-social-auth 和 django > 1.4 来拯救某人

用这个 :

{% url 'social:begin' 'twitter' %}
于 2014-03-16T22:47:04.283 回答
0

我遇到了类似的问题,请尝试将以下内容添加到项目中的 url.py 文件中。

url(r'auth/', include('social_auth.urls'))

并且还要确保你的 url 参数用引号括起来,像这样。

{% url "socialauth_begin" "twitter" %}
于 2014-07-08T18:27:55.077 回答