gpt4 book ai didi

python - Django 'next' 重定向用于登录和新用户

转载 作者:太空宇宙 更新时间:2023-11-03 14:58:33 26 4
gpt4 key购买 nike

我有一个电子商务网站,用户无需登录即可查看广告。但是,当他们想要发布广告时,他们会被重定向到登录页面,成功登录后,他们会被定向到“创建广告”页。该功能运行良好。问题是,当用户重定向到登录页面并点击“新用户”并创建帐户时,成功创建帐户后,她不会被重定向到“创建广告”页面。

到目前为止,我的代码如下所示:

登录.html:

#login form


<form method="post" action="{% url 'login' %}"> {% csrf_token %} {% if request.GET.next %} <input type="hidden" name="next" value={{ request.GET.next }} /> {% endif %}
<b>Name:</b>
{{ form.username }}
<b>Password:</b>
{{ form.password }} <input type="submit" value="OK"> </form>
# button to redirect to new account creation page
<a href="{% url 'unauth_home_new' %}#section0"><button>New Account</button></a> </div>

views.py:

def login(request, lang=None, *args,**kwargs):
if request.user.is_authenticated():
if 'next' in request.POST:
return redirect(request.POST['next'])
return redirect("home")
else:
if request.method == 'POST':
if lang == 'ur':
return log_me_in(request=request,template_name='login_ur.html')
else:
return log_me_in(request=request,template_name='login.html')
else:
if lang == 'ur':
return log_me_in(request=request,template_name='login_ur.html')
else:
return log_me_in(request=request,template_name='login.html')

最佳答案

您需要在创建帐户页面上进行下一步。从登录链接到创建用户页面后,下一个页面将在链接上丢失。因此,从登录传递下一个到创建用户页面。

您只需将其附加到链接即可创建新帐户。您可能需要在服务器端从登录 View 中 django 中的 url 获取它,并将其发送到登录模板,以便您可以将其添加到链接中。

关于python - Django 'next' 重定向用于登录和新用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45311928/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com