Python @点击浏览器上的“后退”按钮时,所需的“登录”装饰程序不起作用
这是我第一次为django使用decorator。我能够阻止未经身份验证的用户访问某些视图。我只能通过loggin查看页面,这是完美的,但当我在从受限页面注销后点击后退按钮时,它会返回到受限页面 我的观点是:Python @点击浏览器上的“后退”按钮时,所需的“登录”装饰程序不起作用,python,django,python-decorators,login-required,Python,Django,Python Decorators,Login Required,这是我第一次为django使用decorator。我能够阻止未经身份验证的用户访问某些视图。我只能通过loggin查看页面,这是完美的,但当我在从受限页面注销后点击后退按钮时,它会返回到受限页面 我的观点是: @login_required def dashboard(request): if not request.user.is_authenticated(): return render_to_response('/blog/login.html') category =
@login_required
def dashboard(request):
if not request.user.is_authenticated():
return render_to_response('/blog/login.html')
category = Category.objects.all()
return render_to_response('dashboard.html',{'category':category})
Settings.py:
#URL for @login_required decorator to use
LOGIN_URL = '/blog/login/'
#Redirect Authenticated USers
LOGIN_REDIRECT_URL = '/blog/dashboard/'
以下是我的注销视图:
def user_logout(request):
logout(request)
return render_to_response('login.html')
您的日志视图不应该是真实视图,而应该是一个URL路由,它将记录日志并将用户重定向到另一个视图,您还可以使用cache_控件装饰器强制浏览器不缓存
from django.views.decorators.cache import never_cache
@never_cache
def myview(request):
...
您应该在注销后重定向。我这样做:
返回HttpResponseRedirect('/')
,但没有帮助!你是说这个吗@Bjorni在我的登录视图、注销视图和仪表板视图中做到了这一点。这没有帮助。重定向本身应该防止用户再次看到该页面,还应确保使用firebug时发送的头文件设置了以下内容:patch\u cache\u control(response,no\u cache=True,no\u store=True,must\u revalidate=True)