【发布时间】:2017-11-10 06:51:48
【问题描述】:
我正在为我的 django 应用程序创建自定义登录名,当我在模板上单击 logout 时出现问题,我对其进行了编程,因此它转到索引页面,但浏览器中的 url 仍然是 http://127.0.0.1:8000/logout/ 甚至到达索引页面。我希望它变成http://127.0.0.1:8000/。
views.py
def logout(request):
try:
del request.session['uid']
return render(request, 'home.html')
except:
pass
return render(request, 'home.html')
def home_page(request):
return render(request, 'home.html')
模板
<p>
Publisher Dashboard, Welcome {{ user.name }}.
<a href="{% url 'logout' %}" class="btn btn-primary">Logout</a>
</p>
urls.py
from django.conf.urls import url
from django.contrib import admin
from mainapp import views
urlpatterns = [
url(r'^$', views.home_page, name='homepage'),
url(r'^registration/$', views.signup_user, name='signup_user'),
....
url(r'^logout/$', views.logout, name='logout'),
]
【问题讨论】:
-
Django 有一个built in authentication system。如果可能的话,您应该使用它,而不是滚动您自己的使用
session['uid']的系统。
标签: python html django url web