说明
实现网页登录后跳转应该分为两类:即登录成功后跳转和登录失败再次登录成功后跳转。参考网上内容,基本都只实现了第一类。而没有实现第二类。
实现
为了能让登录失败后再次登录成功后还能实现跳转。我这里采用了笨办法, 即:无论登录成功与否,都将跳转链接在前后端进行传递 ,这样跳转链接就不会在登录失败后消失。不多说,上代码
后端 views.py
from django.shortcuts import render, redirect
def login(request):
# 当前端点击登录按钮时,提交数据到后端,进入该post方法
if request.method == "post":
# 获取用户名和密码
username = request.post.get("username")
passwd = request.post.get("password")
# 在前端传回时也将跳转链接传回来
next_url = request.post.get("next_url")
# 对用户进行验证,假设正确的用户名密码为"aaa", "123"
if username == 'aaa' and passwd == '123':
# 判断用户一开始是不是从login页面进入的
# 如果跳转链接不为空并且跳转页面不是登出页面,则登录成功后跳转,否则直接进入主页
if next_url and next_url != "/l