Django配置邮箱登录

1.settings下配置

# AUTH 方法(支持邮箱登录)
AUTHENTICATION_BACKENDS = (‘users.views.CustomBackend‘,)

2.views下逻辑如下

from django.contrib.auth.backends import ModelBackend
from django.db.models import Q
from users.models import UserProfile, EmailVerifyRecord

# 让用户可以用邮箱登录
# setting 里要有对应的配置
class CustomBackend(ModelBackend):
    def authenticate(self, request, username=None, password=None, **kwargs):
        try:
            user = UserProfile.objects.get(Q(username=username) | Q(email=username))
            if user.check_password(password):
                return user
        except Exception as e:
            return None

原文地址:https://www.cnblogs.com/dream-hh/p/9966073.html

时间: 2024-08-30 06:12:04

Django配置邮箱登录的相关文章

django 注册、登录及第三方接口程序(4):扩展邮箱注册,登录,微博登录

1.邮箱注册 这里需要扩展User,两种解决办法,1,注册时将email字段内容赋给username,这种瞒天过海型的,另一种就是扩展user,这里介绍django1.5的扩展方法. 1.setting配置 AUTH_USER_MODEL = 'manager.MyUser' # 扩展表的位置,appname.Model, MyUser是manager app下models中的用户类 AUTHENTICATION_BACKENDS = ('django.contrib.auth.backends

转载django用户注册、登录、注销和用户扩展

1.用户登录: 首先假设有这样的登录界面: 处理登录的视图代码如下: def userLogin(request): curtime=time.strftime("%Y-%m-%d %H:%M:%S",time.localtime()); if request.method=='POST': print("POST") username=request.POST.get('name','') password=request.POST.get('password',

06.NopCommerce配置邮箱账户

NopCommerce如果配置让用户注册为通过邮箱注册,并且注册后激活邮箱才可登录,那么我们需要对NopCommerce的邮箱账户进行配置,用来发送邮件用.当然邮件还有很多其他用途,比如发送用户订阅的信息,订单的信息,更改密码等.NopCommerce发送邮件的策略不是即时发送,而是先把待发送的数据插入到消息队列中,系统初始化是有一个发送邮件服务任务,定期来执行发送邮件! 1.配置邮箱 您可以为系统邮箱配置多个账号(只需设置一个默认账号用来发送) 注:邮箱配置主要注意一下 SSL 与 Use d

Django流程-以登录功能为例

Django流程-以登录功能为例 一.注意点 1.新创建的app一定要先去settings.py注册 简写:'app01' 完整:'app01.apps.App01Config' 2.启动Django项目的时候,一定要确保一个端口号只有一个Django项目占用,不然的话,会容易造成bug(修改代码后刷新页面没有效果) 3.用户可以访问的资源,都在url中,只有url中开设相关的资源你才能访问到 4.后端资源一般都需要手动指定是否需要暴露给用户 5.Django是默认支持自动重启代码吗的,所以你只

Window上python开发--4.Django的用户登录模块User

在搭建网站和web的应用程序时,用户的登录和管理是几乎是每个网站都必备的.今天主要从一个实例了解以下django本身自带的user模块.本文并不对user进行扩展. 主要使用原生的模块. 1.User模块基础: 在使用user 之前先import到自己的iew中.相当与我们自己写好的models.只不过这个是系统提供的models. from django.contrib.auth.models import User # 导入user模块 1.1User对象属性 User 对象属性:usern

5月19日 邮箱登录页面

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-

nginx+uwsgi+django 配置3

在uwsgi和django配置连接成功后,开始部署正式的业务. uwsgi.xml  和 manage.py  在同一个目录下 supervisor pip install  supervisor  安装supervisor echo_supervisord_conf > /路径supervisord.conf supervisord  开启 先弄懂两个命令: supervisord : supervisor的服务器端部分,启动supervisor就是运行这个命令 supervisorctl:启

配置邮箱服务器

 配置邮箱服务器 理论部分: 数据库 数据库:Exchange 2010 取消了存储组的概念,直接将用户邮箱存储到数据库中. 在安装好Exchange 2010 之后默认就安装好了一个默认的数据库,Mailbox datadase .但是公用文件夹数据库不会自动创建,需要手工创建. 一个数据库大小不应该超过200GB,建议将数据库和日志文件存放在不同存储,节省成本. Exchange 2010 对磁盘的I/O需求相对于 2007 降低了70%,这也就意味着可以支持更大的存储,建议将存放数据库的存

django配置mysql数据库

安装完python后,安装python-mysql来连接mysql数据库,下载地址http://sourceforge.net/projects/mysql-python/,安装很简单,点下一步就可以了,不过要装和你python版本相对应的版本,否则比较蛋疼 安装完成后,配置下django的数据库连接,打开项目的配置文件settings.py,修改DATABASES参数 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql'