繁体   English   中英

登录 django-allauth 后重定向回上一页

[英]Redirect back to previous page after login in django-allauth

博客详细信息视图中有一个按钮要求用户登录评论,但登录后用户被重定向到主页,因为我在settings.py声明:

LOGIN_REDIRECT_URL = "projects:home"

我搜索了一下,发现这可能是一个解决方案:

<a href="{% url 'account_login' %}?next={{request.path}}">Please login to reply</a>

但这甚至不起作用。

谢谢你

您已经完成了一半:当您将 ?next={{request.path}} 添加到您的 a 标签时,您正在创建一个“next”变量并将当前路径分配给它。 但这不足以满足您想要的结果; 您仍然需要在登录表单中实际使用该变量。

您尚未向我们展示您的登录模板,但我认为这是一个基本表单。 向登录表单添加一个隐藏按钮,并让它使用在您的 a 标签中捕获的“next”变量。 将以下代码放在您的登录表单标签中,在其他所有内容之后,但在关闭表单之前:

<input type="hidden" name="next" value="{{ request.GET.next }}" />

当用户提交登录表单时,模板将使用存储在 request.GET.next 中的值,该值是从您的 a 标签中捕获的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM