最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

django-allauth入門學(xué)習(xí)和使用詳解

 更新時間:2019年07月03日 08:20:53   作者:honkerzhou  
這篇文章主要介紹了django-allauth入門學(xué)習(xí)和使用詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

django-allauth是集成的Django應(yīng)用程序,用于解決網(wǎng)站身份驗證,用戶的注冊登錄及賬戶管理,以及第三方(社交)賬戶的身份驗證。

既然你知道并準(zhǔn)備使用django-allauth,所以本文假定你已經(jīng)掌握了基本的django知識(比如會用django搭建Web App,甚至是一個小型博客網(wǎng)站)。

安裝與基本配置

安裝

pip install django-allauth

基本配置

1.在你項目的settings.py里 加上 以下相對應(yīng)的代碼

TEMPLATES = [
  {
    'BACKEND': 'django.template.backends.django.DjangoTemplates',
    'DIRS': [],
    'APP_DIRS': True,
    'OPTIONS': {
      'context_processors': [
        'django.template.context_processors.request',
      ],
    },
  },
]

AUTHENTICATION_BACKENDS = (
  'django.contrib.auth.backends.ModelBackend',
  'allauth.account.auth_backends.AuthenticationBackend',
)

INSTALLED_APPS = (
  
  # 這兩個django本身的app也是需要的,但不需要重復(fù)添加
  'django.contrib.auth',
  'django.contrib.sites',

  'allauth',
  'allauth.account',
  'allauth.socialaccount',

  # 下面是django-allauth目前支持的社交賬號,加上你需要的就行了,不用全加上:
  'allauth.socialaccount.providers.amazon', # 亞馬遜
  'allauth.socialaccount.providers.angellist',
  'allauth.socialaccount.providers.asana',
  'allauth.socialaccount.providers.auth0',
  'allauth.socialaccount.providers.authentiq',
  'allauth.socialaccount.providers.baidu', # 百度
  'allauth.socialaccount.providers.basecamp',
  'allauth.socialaccount.providers.bitbucket',
  'allauth.socialaccount.providers.bitbucket_oauth2',
  'allauth.socialaccount.providers.bitly',
  'allauth.socialaccount.providers.coinbase',
  'allauth.socialaccount.providers.dataporten',
  'allauth.socialaccount.providers.daum',
  'allauth.socialaccount.providers.digitalocean',
  'allauth.socialaccount.providers.discord',
  'allauth.socialaccount.providers.douban', # 豆瓣
  'allauth.socialaccount.providers.draugiem',
  'allauth.socialaccount.providers.dropbox',
  'allauth.socialaccount.providers.dwolla',
  'allauth.socialaccount.providers.edmodo',
  'allauth.socialaccount.providers.eveonline',
  'allauth.socialaccount.providers.evernote',
  'allauth.socialaccount.providers.facebook',
  'allauth.socialaccount.providers.feedly',
  'allauth.socialaccount.providers.fivehundredpx',
  'allauth.socialaccount.providers.flickr',
  'allauth.socialaccount.providers.foursquare',
  'allauth.socialaccount.providers.fxa',
  'allauth.socialaccount.providers.github', # GitHub
  'allauth.socialaccount.providers.gitlab',
  'allauth.socialaccount.providers.google',
  'allauth.socialaccount.providers.hubic',
  'allauth.socialaccount.providers.instagram',
  'allauth.socialaccount.providers.kakao',
  'allauth.socialaccount.providers.line',
  'allauth.socialaccount.providers.linkedin',
  'allauth.socialaccount.providers.linkedin_oauth2',
  'allauth.socialaccount.providers.mailru',
  'allauth.socialaccount.providers.mailchimp',
  'allauth.socialaccount.providers.meetup',
  'allauth.socialaccount.providers.naver',
  'allauth.socialaccount.providers.odnoklassniki',
  'allauth.socialaccount.providers.openid',
  'allauth.socialaccount.providers.orcid',
  'allauth.socialaccount.providers.paypal',
  'allauth.socialaccount.providers.persona',
  'allauth.socialaccount.providers.pinterest',
  'allauth.socialaccount.providers.reddit',
  'allauth.socialaccount.providers.robinhood',
  'allauth.socialaccount.providers.shopify',
  'allauth.socialaccount.providers.slack',
  'allauth.socialaccount.providers.soundcloud',
  'allauth.socialaccount.providers.spotify',
  'allauth.socialaccount.providers.stackexchange',
  'allauth.socialaccount.providers.stripe',
  'allauth.socialaccount.providers.trello',
  'allauth.socialaccount.providers.tumblr',
  'allauth.socialaccount.providers.twentythreeandme',
  'allauth.socialaccount.providers.twitch',
  'allauth.socialaccount.providers.twitter',
  'allauth.socialaccount.providers.untappd',
  'allauth.socialaccount.providers.vimeo',
  'allauth.socialaccount.providers.vk',
  'allauth.socialaccount.providers.weibo', # 新浪微博
  'allauth.socialaccount.providers.weixin', # 微信
  'allauth.socialaccount.providers.windowslive',
  'allauth.socialaccount.providers.xing',
  
)

SITE_ID = 1  # 不要漏了這句哦

2.在項目的urls.py(即與setting.py在同一文件夾的urls.py)里 加上 下面這句:

urlpatterns = [
  url(r'^accounts/', include('allauth.urls')),
]

溫馨提示:

如果你了解或者用過 django.contrib.auth.urls 這個模塊的話,那么用了django-allauth后你就可以用由 allauth 提供的 account_login , account_logout , account_set_password ......這些URLs來替代原先的 login , logout , password_change ......

3.在項目的根目錄(即manage.py所在文件夾)里執(zhí)行以下命令:

python manage.py migrate

4.重啟服務(wù)器。

添加社交賬號登錄

后臺設(shè)置

注意:因為做網(wǎng)站一般有兩種環(huán)境:開發(fā)環(huán)境(即網(wǎng)站在本地主機(jī)上開發(fā))和生產(chǎn)環(huán)境(即網(wǎng)站部署在服務(wù)器),而開發(fā)環(huán)境網(wǎng)站主頁一般為: http://127.0.0.1:8000 ,生產(chǎn)環(huán)境則類似為 http://www.honkerzhou.com ,為簡單描述,所以下文我會直接用 你的域名 代替你的網(wǎng)站主頁地址,故請分清自己的網(wǎng)站主頁地址,以免混淆。

  1. 進(jìn)入后臺管理界面( 你的域名/admin/ ),點擊站點(Sites),在里面增加一個站點,域名就寫 你的域名 ,名稱隨意,填好后點保存;
  2. 在社交賬號(SOCIAL ACCOUNTS)下的社交app(Social application)里增加一個社交app,需要你填上相關(guān)信息(下面以支持GitHub社交賬號登錄為例)。
  3. Provider:選擇GitHub;
  4. 名稱(Name):可以隨便寫,只有你自己能辨別就好,建議寫GitHub;
  5. Client id和Secret key: 需要到 GitHub 上申請獲取。如沒有或不會,詳見獲取第三方應(yīng)用的Client id和Secret key;
  6. Key: 可不填;
  7. Sites: 在可用的sites下選中你的域名,將其移到右邊選中的sites中,點保存。

獲取第三方應(yīng)用的Client id和Secret key

1.GitHub

登錄GitHub后 --> 進(jìn)入Settings --> 進(jìn)入Developer settings --> 在OAuth Apps下進(jìn)入New OAuth App --> 然后按步驟填寫信息 --> 進(jìn)入下一步后就可以看到Client id和Secret key了。

注意:

  1. Homepage URL填寫你的域名;
  2. Authorization callback URL填寫你的域名/accounts/github/login/callback/。

驗證和初步使用

  1. 重要:注銷你的管理員賬號?。?!
  2. 進(jìn)入這個網(wǎng)址: 你的域名/accounts/login/ ,你會看到一個排版很亂很丑的頁面,這是django-allauth自帶的模板。如果這時你選擇通過GitHub賬號登錄并且出現(xiàn)了GitHub登錄授權(quán)的提示說明你前面都做對了,恭喜你!
  3. 但你會發(fā)現(xiàn)授權(quán)登錄后鏈接到了這個網(wǎng)址: 你的域名/accounts/profile/ ,并且得到一個404頁面,這時請別慌張,你只需要在你的settings.py文件里加上這句代碼: LOGIN_REDIRECT_URL = '/' 保存后刷新頁面,你會發(fā)現(xiàn)跳轉(zhuǎn)到了你網(wǎng)站的主頁面;
  4. 如果你要退出登錄,進(jìn)入這個網(wǎng)址: 你的域名/accounts/logout/ 注銷即可。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python pandas求方差和標(biāo)準(zhǔn)差的方法實例

    Python pandas求方差和標(biāo)準(zhǔn)差的方法實例

    標(biāo)準(zhǔn)差(或方差),分為 總體標(biāo)準(zhǔn)差(方差)和 樣本標(biāo)準(zhǔn)差(方差),下面這篇文章主要給大家介紹了關(guān)于pandas求方差和標(biāo)準(zhǔn)差的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2021-08-08
  • python 截取 取出一部分的字符串方法

    python 截取 取出一部分的字符串方法

    下面小編就為大家?guī)硪黄猵ython 截取 取出一部分的字符串方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-03-03
  • Numpy?數(shù)組索引的實現(xiàn)

    Numpy?數(shù)組索引的實現(xiàn)

    本文主要介紹了Numpy?數(shù)組索引的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-01-01
  • Python寫一個簡單的在線編輯器

    Python寫一個簡單的在線編輯器

    這篇文章主要介紹了如何利用Python寫一個簡單的在線編輯器,主要通過pywebio程序,實現(xiàn)了Python的簡陋在線編輯器,需要的小伙伴可以參考一下,希望對你有所幫助
    2022-02-02
  • python跳出雙層循環(huán)的方法

    python跳出雙層循環(huán)的方法

    本文主要介紹了python跳出雙層循環(huán)的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-01-01
  • OpenCV半小時掌握基本操作之SIFT算法

    OpenCV半小時掌握基本操作之SIFT算法

    這篇文章主要介紹了OpenCV基本操作之SIFT算法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-09-09
  • 如何使用python代碼操作git代碼

    如何使用python代碼操作git代碼

    Git 是一個開源的分布式版本控制系統(tǒng),用于敏捷高效地處理任何或小或大的項目。本文通過實例代碼給大家介紹如何使用python代碼操作git,感興趣的朋友一起看看吧
    2020-02-02
  • python?super()函數(shù)的詳解

    python?super()函數(shù)的詳解

    這篇文章主要為大家介紹了python?super()函數(shù),具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-11-11
  • 在Python中用keys()方法返回字典鍵的教程

    在Python中用keys()方法返回字典鍵的教程

    這篇文章主要介紹了在Python中用keys()方法返回字典鍵的教程,是Python入門中的基礎(chǔ)知識,需要的朋友可以參考下
    2015-05-05
  • Python 通過調(diào)用接口獲取公交信息的實例

    Python 通過調(diào)用接口獲取公交信息的實例

    今天小編就為大家分享一篇Python 通過調(diào)用接口獲取公交信息的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12

最新評論

横山县| 太仓市| 集贤县| 宜昌市| 汾阳市| 临泽县| 永清县| 盘山县| 军事| 东山县| 茂名市| 灵台县| 仁化县| 寿宁县| 安丘市| 龙川县| 赤城县| 河北区| 邵东县| 手游| 怀仁县| 贵州省| 随州市| 东山县| 天水市| 南阳市| 澎湖县| 连州市| 略阳县| 嵊泗县| 正宁县| 健康| 枞阳县| 奎屯市| 屏南县| 贵港市| 唐海县| 黎川县| 梓潼县| 上林县| 桐柏县|