django自带的用户验证是验证username和password,如何自定义验证功能,让mobil也能作为账户名登录?
2024-08-26 18:16:45
users.views.py
from django.contrib.auth.backends import ModelBackend
from django.db.models import Q
class CustomAuth(ModelBackend):
def authenticate(self, request, username=None, password=None, **kwargs):
try:
user=UserProfile.objects.get(Q(username=username)|Q(mobile=username))
if user.check_password(password):
return user
# 如果找不到用户,就返回none
except Exception as e:
return None
settings.py
AUTHENTICATION_BACKENDS=[
"apps.users.views.CustomAuth",
]
最新文章
- 监视EntityFramework中的sql流转你需要知道的三种方式Log,SqlServerProfile, EFProfile
- css实现容器垂直水平居中的七中方法
- 爆一个VS2015 Update1更新带来的编译BUG【已有解决方案】
- Markdown中插入数学公式的方法
- react native 之上传文件
- ACM3 求最值
- andrond mk通配符遍历文件夹
- MySQL5.7更改密码时出现ERROR 1054 (42S22): Unknown column 'password' in 'field list'
- 【jQuery】window.onload 和 $(document).ready() 的区别
- 推荐几款很棒的 JavaScript 表单美化和验证插件
- 【Moqui业务逻辑翻译系列】--UBPL index
- 举例详解CSS中的继承
- 成功完成Moses Manual中BaseLineSystem
- js原型继承
- 深入探索C++对象模型-5
- PHP 运算符 详解
- hdu 2256 Problem of Precision
- JAVA $ JSP
- Flex移动应用程序开发的技巧和窍门(四)
- JS基础三