Advertisement
Guest User

Untitled

a guest
Feb 27th, 2018
218
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.97 KB | None | 0 0
  1. from django.contrib.auth import get_user_model  # gets the user_model django  default or your own custom
  2. from django.contrib.auth.backends import ModelBackend
  3. from django.db.models import Q
  4.  
  5.  
  6. class CustomBackend(ModelBackend):
  7.  
  8.     def authenticate(self, username=None, password=None, **kwargs):
  9.         UserModel = get_user_model()
  10.  
  11.         try:
  12.             user = UserModel.objects.filter(
  13.                 Q(username__iexact=username) |
  14.                 Q(email__iexact=username)).distinct()
  15.         except UserModel.DoesNotExist:
  16.             return None
  17.  
  18.         if user.exists():
  19.             user_obj = user.first()
  20.             if user_obj.check_password(password):
  21.                 return user_obj
  22.             return None
  23.         else:
  24.             return None
  25.  
  26.     def get_user(self, user_id):
  27.         UserModel = get_user_model()
  28.         try:
  29.             return UserModel.objects.get(pk=user_id)
  30.         except UserModel.DoesNotExist:
  31.             return None
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement