redirect/返回到Django中的相同(前一个)页面?
可能重复:
Django:login后redirect到上一页
当你想把用户返回到Django中的同一个页面时,有什么select?每个用户有什么优点/缺点?
我知道的方法是:
- HTTP_REFERER
- 包含前一个URL的GET参数
- 会话数据存储以前的URL
还有其他的吗?
其中一种方法是使用HTTP_REFERER
头,如下所示:
from django.http import HttpResponseRedirect def someview(request): ... return HttpResponseRedirect(request.META.get('HTTP_REFERER'))
不确定这个!
虽然问题和答案是旧的,但我认为它缺乏一些select。 我没有发现任何方法的缺点,我会很高兴知道有没有什么?
- request.path_info
- request.get_full_path()
-
request.build_absolute_uri()
from django.shortcuts import redirect redirect(request.path_info) # No query parameters redirect(request.build_absolute_uri()) # Keeps query parameters redirect(request.get_full_path()) # Keeps query parameters