在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}},您正在创建一个"next"变量并为其分配当前路径。但仅凭这一点还不足以达到您想要的结果;您仍然需要在登录表单中使用该变量。

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

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

当用户提交登录表单时,模板将使用请求中存储的值。GET.next,它是从您的一个标签中捕获的。

最新更新