My models were fine, migrate successfully and I am able to create superuser. I am not able to go to admin login page as the error shows up "CustomAuthBackend() missing 1 required positional argument: 'ModelBackend'"
In Custom Backends:
def CustomAuthBackend(ModelBackend):
def authenticate(self, request, email=None, password=None, phone=None):
my_user_model = get_user_model()
user = None
if email:
try:
user = my_user_model.objects.get(email=email)
except:
return None #Return None if no such user
elif phone:
try:
user = my_user_model.objects.get(phone=phone)
except:
return None #Return None is no such user
if user:
if user.check_password(password):
return user
else:
return None
def get_user(self, user_id):
my_user_model = get_user_model()
try:
return my_user_model.objects.get(pk=user_id)
except my_user_model.DoesNotExist:
return None
In Settings:
AUTH_USER_MODEL = 'authengine.User'
AUTHENTICATION_BACKENDS = ['authengine.backends.CustomAuthBackend']