【发布时间】:2019-03-23 13:40:55
【问题描述】:
我是 django 的新手,我在 Ubuntu 服务器中使用 1.8 版本,我成功地进行了登录和注销过程,但是当我的用户尝试转到上一页时,他们可以将其视为匿名用户.如何拒绝访问?
我尝试在我的 views.py 上使用 if 但不起作用:
def login(request):
if not request.user.is_authenticated():
return render(request,"base.html",{})
return render(request,"general.html",{})
@login_required
def general(request):
return render(request,"general.html")
希望有人可以帮助我。
编辑: 我正在使用 django 的默认 url 登录和注销。
url(r'^$','django.contrib.auth.views.login', {'template_name': 'base.html'}, name='login'),
url(r'^logout/$', 'django.contrib.auth.views.logout', {'next_page': 'login'}, name='logout'),
【问题讨论】:
-
他们退出后可以看到
general页面吗?或者只有当他们点击浏览器上的后退按钮时?如果他们在点击后退按钮时可以看到它,那可能只是他们的浏览器缓存了页面。如果他们刷新它,他们是否能够看到该页面? -
只有当他们在注销后点击返回按钮时,如果我刷新页面而不是
general页面,login页面就会显示 -
连同您的视图中的 login_required,在您的模板中进行了更改。即使他们按下返回按钮,这也会阻止他们看到。我已经添加了答案。
标签: python django django-templates django-views django-1.8