我有一个注册表单,当输入已经注册的电子邮件时,它会显示一条带有登录链接的错误消息,单击登录链接时,它将重定向到登录页面,在这里我要用该用户的电子邮件。我正在使用Django。
有人知道怎么做吗? 我将不胜感激。谢谢。
我在urls.py中的登录网址:
path('login/', views.login, name="login")
错误消息中的我的登录链接:
<a href="login/">login</a>
请让我做什么,添加到url链接中以使用用户电子邮件ID预先填充。
答案 0 :(得分:1)
您只需要使用request.GET
检索URL中提供的数据,并使用它在登录视图中预填充form's initial
。大致如下:
def login(request, *args, **kwargs):
initial = {}
if 'email' in request.GET:
initial['email'] = request.GET['email']
form = LoginForm(request.POST or None, initial=initial)
...
当然,您必须将电子邮件添加到登录URL:
<a href="login/?email=foo@bar.baz">login</a>