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",
]

最新文章

  1. 监视EntityFramework中的sql流转你需要知道的三种方式Log,SqlServerProfile, EFProfile
  2. css实现容器垂直水平居中的七中方法
  3. 爆一个VS2015 Update1更新带来的编译BUG【已有解决方案】
  4. Markdown中插入数学公式的方法
  5. react native 之上传文件
  6. ACM3 求最值
  7. andrond mk通配符遍历文件夹
  8. MySQL5.7更改密码时出现ERROR 1054 (42S22): Unknown column 'password' in 'field list'
  9. 【jQuery】window.onload 和 $(document).ready() 的区别
  10. 推荐几款很棒的 JavaScript 表单美化和验证插件
  11. 【Moqui业务逻辑翻译系列】--UBPL index
  12. 举例详解CSS中的继承
  13. 成功完成Moses Manual中BaseLineSystem
  14. js原型继承
  15. 深入探索C++对象模型-5
  16. PHP 运算符 详解
  17. hdu 2256 Problem of Precision
  18. JAVA $ JSP
  19. Flex移动应用程序开发的技巧和窍门(四)
  20. JS基础三

热门文章

  1. Nginx 安装配置【必须把文件到放到机器上】
  2. (29)打鸡儿教你Vue.js
  3. 第02组 Alpha冲刺(2/6)
  4. 微信小程序 图片设置为圆形
  5. hive 属性随笔记录
  6. tecplot当中共用一个legend进行对比
  7. Linux 的crond 任务调度
  8. 使用Xpose突破安卓App禁止截屏限制
  9. numpy linspace
  10. [转]linux 下 使用 c / c++ 调用curl库 做通信开发