0
我试图通过转到login-redirect
页面来登录用户,然后页面重定向到用户个人资料页面。我明白,这不是第一次问这个问题,但我已经尝试了所有其他答案,我不知道为什么这不适合我。Django重定向到kwargs的其他应用程序中的网址
urls.py
urlpatterns = [
url(r'^login/$', auth_views.login, {'template_name': 'login.html'}, name="login"),
url(r'^login/redirect/$', account_redirect, name="account-redirect"),
url(r'^logout/$', auth_views.logout, {'next_page': 'home'}, name="logout"),
url(r'^stores/', include('stores.urls', namespace='store_app'))
]
views.py
def account_redirect(request):
# tried both to see if it would help...
# return HttpResponseRedirect(reverse('store_app:account-landing', kwargs= {"pk":request.user.pk,"name":request.user.vendor.name}))
return redirect('store_app:account-landing', pk=request.user.pk, name=slugify(request.user.vendor.name))
存储/ urls.py
urlpatterns = [
url(r'^account/(?P<pk>\d+)/(?P<name>\w+)/$', AccountLanding.as_view(), name="account-landing"),
]
基于SERV其他相关问题的答案,这应该很好,但事实并非如此。之后,我登录,并获得login/redirect/
我得到以下错误:
Reverse for 'account-landing' with arguments '()' and keyword arguments '{'pk': 1, 'name': u'Fake Company'}' not found. 1 pattern(s) tried: [u'stores/account/(?P<pk>\\d+)/(?P<name>\\w+)/$']
我不明白,它试图正确的模式,并有正确的论点?那为什么它不起作用?
现在很好用,不知道为什么我没有想到这一点。是的,我用的线实际上没有注释掉。谢谢! – thefoxrocks
@thefoxrocks - 不用担心,尽情享受吧! – Sayse