我寫了一個關於登錄的函數。如下所示:Django:登錄成功後重定向
def login(request,template_name="login/login.html"):
res = {}
if(request.method == "POST"):
username = request.POST.get('username')
password = request.POST.get('password')
user = auth.authenticate(username=username,password=password)
if user is not None:
if user.is_active:
auth.login(request,user)
redirect_to = reverse("home")
return HttpResponseRedirect(redirect_to)
return render_to_response(template_name,RequestContext(request,res))
如果登錄檢查成功,它會重定向到我的主頁。 我的問題是,它顯示正確的頁面內容。 但URL是錯誤的。它留在登錄網址上。
如何顯示重定向頁面的URL?
的HTML代碼:
<form class="authenticate" action="{{ next }}" method="post">
{% csrf_token %}
<table border="0">
{{ login_form }}
</table>
<input type="hidden" name="action" value="login" />
<input type="hidden" name="next" value="{{ next }}" />
<input type="submit" id="login-btn" value="login" />
</form>
的urls.py是:
urlpatterns = patterns('',
url(r'^$','mypro.views.home',name='home'),
url(r'^login/',include('login.urls')),
url(r'^admin/doc/', include('django.contrib.admindocs.urls')),
url(r'^admin/', include(admin.site.urls)),
)
urlpatterns = patterns('',
url(r'^$','login.views.login',name="login"),
url(r'^logout/$','login.views.logout',name="logout"),
)
我發現,無論Firebug的響應和HTML秀 「刷新頁面以獲取來源:http://xx.xx.xx.xx:8002/h5acr/login/refresh/」。 如何重新加載頁面?
顯示我們urls.py – Rohan
我在上面 – Daney
它們添加該代碼應該重定向到家裏並更改網址爲好。你在這裏錯過了一些其他的信息? HttpResponseRedirect()是否被調用?如果登錄成功,則爲 – Rohan