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

Django的session中對于用戶驗(yàn)證的支持

 更新時(shí)間:2015年07月23日 09:50:36   投稿:goldensun  
這篇文章主要介紹了Django的session中對于用戶驗(yàn)證的支持,Django是百花齊放的Python框架中人氣最高的一個(gè),需要的朋友可以參考下


用戶與Authentication

通過session,我們可以在多次瀏覽器請求中保持?jǐn)?shù)據(jù), 接下來的部分就是用session來處理用戶登錄了。 當(dāng)然,不能僅憑用戶的一面之詞,我們就相信,所以我們需要認(rèn)證。

當(dāng)然了,Django 也提供了工具來處理這樣的常見任務(wù)(就像其他常見任務(wù)一樣)。 Django 用戶認(rèn)證系統(tǒng)處理用戶帳號(hào),組,權(quán)限以及基于cookie的用戶會(huì)話。 這個(gè)系統(tǒng)一般被稱為 auth/auth (認(rèn)證與授權(quán))系統(tǒng)。 這個(gè)系統(tǒng)的名稱同時(shí)也表明了用戶常見的兩步處理。 我們需要

    驗(yàn)證 (認(rèn)證) 用戶是否是他所宣稱的用戶(一般通過查詢數(shù)據(jù)庫驗(yàn)證其用戶名和密碼)

    驗(yàn)證用戶是否擁有執(zhí)行某種操作的 授權(quán) (通常會(huì)通過檢查一個(gè)權(quán)限表來確認(rèn))

根據(jù)這些需求,Django 認(rèn)證/授權(quán) 系統(tǒng)會(huì)包含以下的部分:

    用戶 : 在網(wǎng)站注冊的人

    權(quán)限 : 用于標(biāo)識(shí)用戶是否可以執(zhí)行某種操作的二進(jìn)制(yes/no)標(biāo)志

    組 :一種可以將標(biāo)記和權(quán)限應(yīng)用于多個(gè)用戶的常用方法

    Messages : 向用戶顯示隊(duì)列式的系統(tǒng)消息的常用方法

如果你已經(jīng)用了admin工具(詳見第6章),就會(huì)看見這些工具的大部分。如果你在admin工具中編輯過用戶或組,那么實(shí)際上你已經(jīng)編輯過授權(quán)系統(tǒng)的數(shù)據(jù)庫表了。
打開認(rèn)證支持

像session工具一樣,認(rèn)證支持也是一個(gè)Django應(yīng)用,放在 django.contrib 中,所以也需要安裝。 與session系統(tǒng)相似,它也是缺省安裝的,但如果它已經(jīng)被刪除了,通過以下步驟也能重新安裝上:

    根據(jù)本章早前的部分確認(rèn)已經(jīng)安裝了session 框架。 需要確認(rèn)用戶使用cookie,這樣sesson 框架才能正常使用。

    將 'django.contrib.auth' 放在你的 INSTALLED_APPS 設(shè)置中,然后運(yùn)行 manage.py syncdb以創(chuàng)建對應(yīng)的數(shù)據(jù)庫表。

    確認(rèn) SessionMiddleware 后面的 MIDDLEWARE_CLASSES 設(shè)置中包含 'django.contrib.auth.middleware.AuthenticationMiddleware' SessionMiddleware。

這樣安裝后,我們就可以在視圖(view)的函數(shù)中處理user了。 在視圖中存取users,主要用 request.user ;這個(gè)對象表示當(dāng)前已登錄的用戶。 如果用戶還沒登錄,這就是一個(gè)AnonymousUser對象(細(xì)節(jié)見下)。

你可以很容易地通過 is_authenticated() 方法來判斷一個(gè)用戶是否已經(jīng)登錄了:

if request.user.is_authenticated():
  # Do something for authenticated users.
else:
  # Do something for anonymous users.


相關(guān)文章

  • Python解方程組 scipy.optimize.fsolve()函數(shù)如何求解帶有循環(huán)求和的方程式

    Python解方程組 scipy.optimize.fsolve()函數(shù)如何求解帶有循環(huán)求和的方程式

    這篇文章主要介紹了Python解方程組 scipy.optimize.fsolve()函數(shù)如何求解帶有循環(huán)求和的方程式,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-06-06
  • Python實(shí)現(xiàn)批量導(dǎo)入1000條xlsx數(shù)據(jù)

    Python實(shí)現(xiàn)批量導(dǎo)入1000條xlsx數(shù)據(jù)

    本文主要介紹了Python實(shí)現(xiàn)批量導(dǎo)入1000條xlsx數(shù)據(jù),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-02-02
  • Linux環(huán)境下MySQL-python安裝過程分享

    Linux環(huán)境下MySQL-python安裝過程分享

    這篇文章主要介紹了Linux環(huán)境下MySQL-python安裝過程分享,本文使用的編譯方式安裝,需要的朋友可以參考下
    2015-02-02
  • Pandas中迭代DataFrame行的方法總結(jié)

    Pandas中迭代DataFrame行的方法總結(jié)

    Python是進(jìn)行數(shù)據(jù)分析的一種很好的語言,主要是因?yàn)橐詳?shù)據(jù)為中心的Python包的奇妙生態(tài)系統(tǒng),本文主要為大家介紹了如何在Pandas中迭代DataFrame中的行,有需要的可以參考下
    2023-09-09
  • python list 切片倒著取的實(shí)現(xiàn)示例

    python list 切片倒著取的實(shí)現(xiàn)示例

    切片操作非常靈活,可以按照需要獲取列表中的任意一段元素,本文主要介紹了python list 切片倒著取的實(shí)現(xiàn)示例,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-01-01
  • python實(shí)現(xiàn)復(fù)制文件到指定目錄

    python實(shí)現(xiàn)復(fù)制文件到指定目錄

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)復(fù)制文件到指定的目錄下,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-10-10
  • Python類的定義和使用詳情

    Python類的定義和使用詳情

    這篇文章主要介紹了Python類的定義和使用詳情,在Python中,類表示具有相同屬性和方法的對象的集合,文章圍繞主題相關(guān)資料展開更多的相關(guān)介紹,需要的小伙伴可以參考一下
    2022-06-06
  • Python可變對象與不可變對象原理解析

    Python可變對象與不可變對象原理解析

    這篇文章主要介紹了Python可變對象與不可變對象原理解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-02-02
  • Python實(shí)現(xiàn)前端樣式尺寸單位轉(zhuǎn)換

    Python實(shí)現(xiàn)前端樣式尺寸單位轉(zhuǎn)換

    在?Web?前端項(xiàng)目開發(fā)時(shí),樣式尺寸都是以?rpx?為單位,可是?UI?設(shè)計(jì)師在看完開發(fā)后的?UI?,卻要求都以?px?為單位,所以本文就和大家分享一個(gè)利用Python就能實(shí)現(xiàn)尺寸單位轉(zhuǎn)換的方法吧
    2023-06-06
  • 詳解Python中httptools模塊的使用

    詳解Python中httptools模塊的使用

    httptools?是一個(gè)?HTTP?解析器,它首先提供了一個(gè)?parse_url?函數(shù),用來解析?URL。這篇文章就來和大家聊聊它的用法吧,感興趣的可以了解一下
    2023-03-03

最新評論