我目前正在为 Django 应用程序实现身份验证,我正在编写。按照 Thinkster Django 课程的代码,我实现了整个注册过程,但是我无法登录,因为在注册用户时密码没有被散列。
这是我的自定义 User 模型和create_user函数。
class UserManager(BaseUserManager)
def create_user(self, username, email, password=None):
if username is None:
raise TypeError('Users must have a username.')
if email is None:
raise TypeError('Users must have an email address.')
user = self.model(username=username, email=self.normalize_email(email))
user.set_password(password)
user.save()
return user
def create_superuse(self, username, email, password):
if password is None:
raise TypeError('Superusers must have a password.')
user = self.create_user(username, email, password)
user.is_superuser = True
user.is_staff = True
user.save()
return user
class User(AbstractBaseUser, PermissionsMixin):
username …Run Code Online (Sandbox Code Playgroud)