姜戈。如何将下一个变量传递给 auth_views.login
Posted
技术标签:
【中文标题】姜戈。如何将下一个变量传递给 auth_views.login【英文标题】:Django. How do I pass the next variable to auth_views.login 【发布时间】:2015-11-05 19:54:59 【问题描述】:这有点简单,但我找不到正确的格式:
如何将next
变量传递给auth_views.login
?
这是我的代码:
from django.contrib.auth import views as auth_views
url(r'^login/$', auth_views.login, 'template_name': 'login.html', name="login"),
如何将next
变量传递给视图,使其不会重定向到默认的/accounts/profile/
?
我试过了:
url(r'^login/$', auth_views.login, 'template_name': 'login.html', 'extra_context': 'next': '/', name="login"),
但它不起作用。
【问题讨论】:
不会在设置文件中添加LOGIN_REDIRECT_URL
吗?
是的,但是在文档上它写了If next isn’t provided, it redirects to settings.LOGIN_REDIRECT_URL
...我需要“提供下一个”。
正确。那么为什么不更改LOGIN_REDIRECT_URL
,因此它将重定向到您需要的位置,而视图中没有任何自定义参数?
【参考方案1】:
您可以在通过POST
提交登录数据的页面中将next
参数作为查询参数传递。
假设您在登录模板中有一个表单,那么您可以通过以下方式指定next
:
<form action="<login_url>?next=/my/next/url/" method="POST">
【讨论】:
以上是关于姜戈。如何将下一个变量传递给 auth_views.login的主要内容,如果未能解决你的问题,请参考以下文章