明瞳 2020-04-10
1、 get_full_path() 获取的url路径包含参数 2、path_info 获取的路径不包含参数 注意:获取的路径都不包含协议 IP 和端口 3、补充 sesssion http://127.0.0.1:8000/admin/login/?next=/admin/ 1、登录admin /admin/ 使用 path_info 获取 /admin/ django request 获取请求的URL request.get_host() 获取请求地址 request.path 获取请求的path,不带参数 request.path_info 获取请求的path,不带参数 request.get_full_path() 获取完整参数 假设当前网址是:http://www.chenxm.cc/article/730.html?a=1 request.get_host() # request.path # article/730.html request.get_full_path() article/730.html?a=1 笨方法: from urllib import parse parse.urljoin(‘http://‘,request.get_host(),request.path) # http://www.chenxm.cc/article/730.html 优雅方法 request.build_absolute_uri() # http://www.chenxm.cc/article/730.html
、没有登录用户跳转到 /admin/login/?next=/admin/ ?next=获取的url request.GET.get(next) 获取这个url 3、输入用户密码后,跳转到/admin/