Django之第三方登陆模块
2023-09-14 08:56:57 时间
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 = '/'
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
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
开启服务
后面先个坑!!
相关文章
- Echarts学习:Django快速集成Echarts
- Django之Models(三)
- Django配置websocket请求接口
- django和flask的区别
- 第三百八十三节,Django+Xadmin打造上线标准的在线教育平台—第三方模块django-simple-captcha验证码
- Django中如何使用django-celery完成异步任务2(转)
- python-django框架-电商项目-商品模块开发_20191124
- 部署django+uwsgi+Virtualenv+nginx+supervisor详细步骤
- [Django] Start a new django project
- Django管理工具django-admin.py创建项目
- 笔记6:Django基础
- python-django项目-Linux系统建立django项目_20191117
- django迁移:全局、局部
- django的RestFramework模块的源码分析
- Django 3.2.5博客开发教程:体验django模板
- Django 3.2.5博客开发教程:HelloWorld欢迎页面
- Python Django 迁移失败如何处理
- Python Django 获取多条记录API
- Python Django 设置/更改响应头信息
- Python Django开发案例:GET方式实现登录功能
- Window上python开发--4.Django的用户登录模块User
- Django 认证系统 cookie & session & auth模块
- Django学习5 -- 添加个人应用(数据库)