zoukankan      html  css  js  c++  java
  • Django之第三方登陆模块

    Django之第三方登陆模块

     前期准备

    安装 django-allauth

    pip install django-allauth

    注意,django-allauth 需要在 Django1.10以上版本使用。

    settings.py 文件配置

    INSTALLED_APPS = (
        ...
        # 需要的 app
        'django.contrib.auth',
        'django.contrib.sites',
    
        'allauth',
        'allauth.account',
        'allauth.socialaccount',
        # 提供你想接入的第三方验证账户,这里以百度为例
        'allauth.socialaccount.providers.baidu',
    )
    
    SITE_ID = 1
    
    LOGIN_REDIRECT_URL = '/'
    

      

    INSTALLED_APPS = [
        'django.contrib.admin',
        'django.contrib.auth',
        'django.contrib.contenttypes',
        'django.contrib.sessions',
        'django.contrib.messages',
        'django.contrib.staticfiles',
        'django.contrib.sites',
        'allauth',
        'allauth.account',
        'allauth.socialaccount',
          # 下面是第三方账号相关的,比如我选了weibo和github
        'allauth.socialaccount.providers.weibo',
         'allauth.socialaccount.providers.github',
    ]
     # django-allauth相关设置
    AUTHENTICATION_BACKENDS = (
          # django admin所使用的用户登录与django-allauth无关
          'django.contrib.auth.backends.ModelBackend',
          # `allauth` specific authentication methods, such as login by e-mail
          'allauth.account.auth_backends.AuthenticationBackend',
    )
    # 前面我们app里添加了django.contrib.sites,需要设置
    SITE_ID = 1
    LOGIN_REDIRECT_URL = '/'
    ACCOUNT_AUTHENTICATION_METHOD = 'username_email'
    ACCOUNT_EMAIL_REQUIRED = True
    
    # ACCOUNT_AUTHENTICATION_METHOD = 'username_email'的作用是当用户登录时,既可以使用用户名也可以使用email, 其他可选的值是 "username""email" ,ACCOUNT_EMAIL_REQUIRED = True要求用户注册时必须填写email,默认False,email是选填的。
    设置
    除了 allauth.socialaccount.providers.baidu 外,也可以把 baidu 换成 twitter 或 github 等几十种不同的网站验证
    官方网站列出了所有支持的网站:https://django-allauth.readthedocs.io/en/latest/providers.html
    

      

    urls.py文件配置

    re_path(r'^accounts/', include('allauth.urls')),
    

     

    同步数据库

    ./manage.py migrate

     

     

    开启服务

     后面先个坑!!

  • 相关阅读:
    java,jsp+mysql5.6搭建环境
    数据结构:栈的顺序存储结构
    开源 免费 java CMS FreeCMS1.2标签 config
    在Ubuntu中安装HP LaserJet 1020驱动
    iPad及BT4下的WEP破解实验与分析 | Network Security
    WEP&WPA Cracking on BT5/MAC [转]
    关于显示屏分辨率的问题
    Laravel5.1 路由 路由分组
    版本号/缓存刷新 laravel mix函数
    Laravel 中config的用法
  • 原文地址:https://www.cnblogs.com/-wenli/p/10573894.html
Copyright © 2011-2022 走看看