gpt4 book ai didi

python - Django 渲染重定向到具有更改 url 的页面

转载 作者:太空宇宙 更新时间:2023-11-03 15:08:27 26 4
gpt4 key购买 nike

我正在为我的 django 应用程序创建自定义登录,当我在我编程的模板上单击logout时,会出现问题,因此它会转到索引页面,但浏览器中的 url 仍然是http://127.0.0.1:8000/logout/ 甚至到达索引页面。我希望它成为 http://127.0.0.1:8000/

View .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>

url.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'),
]

最佳答案

当前您正在渲染 'home.html 模板,而不是将用户重定向到主页。

如果您想重定向,则应返回 HttpResponseRedirect 响应,或使用 redirect 快捷方式。

from django.shortcuts import redirect

def logout(request):
...
return redirect('/')

关于python - Django 渲染重定向到具有更改 url 的页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44437706/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com