我正在尝试使用mysql数据库中的凭据登录,但是它无法正常工作。它对于管理员凭据正常工作。
views.py
def logauth(request):
if request.method == "POST":
username = request.POST['username']
password = request.POST['password']
user = authenticate( username=username,password=password)
if user is not None:
messages.error(request,'if part : user is not None')
login(request,user)
messages.error(request,'111')
return redirect('emp')
else:
messages.error(request,'else part : user is None')
return redirect('login_url')
else:
messages.error(request,'Please provide valid credentials')
return render(request,'registration/login.html')
models.py
class RegAuth(AbstractBaseUser):
username = models.CharField(max_length=255)
email = models.EmailField(unique="TRUE")
password = models.CharField(max_length=255)
mobile = models.CharField(max_length=12)
registrationDate = models.DateTimeField(auto_now_add=True)
last_login = models.DateTimeField(auto_now_add=True)
objects = UserManager()
is_anonymous = "FALSE"
is_authenticated = "TRUE"
is_active = False
is_superuser = True
username_FIELD = "email"
REQUIRED_FIELDS = ["username","mobile"]
class Meta:
db_table = "bloggerauth"
def __str__(self):
return self.email
setting.py
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql','NAME': 'jayesh','USER': 'root','PASSWORD': 'root','HOST': 'localhost','PORT': '3306','OPTIONS': {
'init_command': "SET sql_mode='STRICT_TRANS_TABLES'",},}
}
AUTHENTICATION_BACKENDS = ('polls.backends.MyBackEnd','django.contrib.auth.backends.ModelBackend',)