登录后跳转原页面

登录后跳转原页面

def login_auth(func_name):
    def inner(request, *args, **kwargs):
        # print(request.path)
        # print(request.path_info)
        # 1.获取用户没有登录之前想要访问的网址地址
        target_path = request.get_full_path()
        if request.COOKIES.get('name'):
            res = func_name(request, *args, **kwargs)
            return res
        else:
            # 2.将用户想要访问的地址当做参数传给登录功能
            return redirect(f'/login/?next={target_path}')
    return inner
  
def login(request): if request.method == 'POST': name = request.POST.get("name") if name == 'jason': # 获取用户登录之前想要访问的地址 next_path = request.GET.get('next') '''注意 用户也有可能直接访问的登录页面 没有想要访问的其他页面''' if next_path: res = redirect(next_path) # 跳转到之前想要访问的界面 else: res = redirect('/home/') # 默认登录之后跳转的界面 res.set_cookie('name', 'jason') return res return render(request, 'login.html')

 

posted @ 2022-05-24 16:33  末笙  阅读(125)  评论(0)    收藏  举报