Python @点击浏览器上的“后退”按钮时,所需的“登录”装饰程序不起作用

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 =

这是我第一次为django使用decorator。我能够阻止未经身份验证的用户访问某些视图。我只能通过loggin查看页面,这是完美的,但当我在从受限页面注销后点击后退按钮时,它会返回到受限页面

我的观点是:

@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)