Next向上一页面跳转

本文介绍了如何在Django中实现登录、注册和注销后跳转回用户之前的页面,提供良好的用户体验。Django默认处理登录和注销的跳转,通过next参数记录用户URL。在登录表单中增加隐藏input传递next值,确保登录成功后能返回原页面。对于注册,需自定义视图函数来获取并处理跳转地址。
摘要由CSDN通过智能技术生成

对于一个网站来说,比较好的用户体验是登录、注册和注销后跳转回用户之前访问的页面。
在登录和注销的视图函数中,Django 已经为我们处理了跳转回用户之前访问页面的流程。
其实现的原理是,在登录和注销的流程中,始终传递一个 next 参数记录用户之前访问页面的 URL。
我们需要做的就是在用户访问登录或者注销的页面时,在 URL 中传递一个 next 参数给视图函数,具体做法如下:

<li class="cl-effect-11"><a href="{% url 'logout' %}" data-hover="退出">退出</a></li>
{% else %}
    <li class="cl-effect-11"><a href="{% url 'login' %}" data-hover="登陆">登陆</a></li>
    <li class="cl-effect-11"><a href="{% url 'users:register' %}?next={
   { request.path }}" data-hover="注册">注册</a></li>
{% endif %}

可以看到,我们在登录和注销的 URL 后加了 next 参数,其值为 { { request.path }}。request

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值