欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

在Django中限制已登錄用戶的訪問的方法

 更新時間:2015年07月23日 10:24:50   投稿:goldensun  
這篇文章主要介紹了在Django中限制已登錄用戶的訪問的方法,Django是最具人氣的Python開發(fā)框架,需要的朋友可以參考下

有很多原因需要控制用戶訪問站點的某部分。

一個簡單原始的限制方法是檢查 request.user.is_authenticated() ,然后重定向到登陸頁面:

from django.http import HttpResponseRedirect

def my_view(request):
  if not request.user.is_authenticated():
    return HttpResponseRedirect('/accounts/login/?next=%s' % request.path)
  # ...

或者顯示一個出錯信息:

def my_view(request):
  if not request.user.is_authenticated():
    return render_to_response('myapp/login_error.html')
  # ...

作為一個快捷方式, 你可以使用便捷的 login_required 修飾符:

from django.contrib.auth.decorators import login_required

@login_required
def my_view(request):
  # ...

login_required 做下面的事情:

    如果用戶沒有登錄, 重定向到 /accounts/login/ , 把當前絕對URL作為 next 在查詢字符串中傳遞過去, 例如: /accounts/login/?next=/polls/3/ 。

    如果用戶已經(jīng)登錄, 正常地執(zhí)行視圖函數(shù)。 視圖代碼就可以假定用戶已經(jīng)登錄了。
=

相關(guān)文章

最新評論