選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

models.py 970B

123456789101112131415161718192021222324252627282930313233343536
  1. # -*- coding: utf-8 -*-
  2. # Code will only work with Django >= 1.5. See tests/config.py
  3. from django.contrib.auth.models import AbstractUser, BaseUserManager
  4. class CustomUserManager(BaseUserManager):
  5. def create_user(self, username, email, password):
  6. """
  7. Creates and saves a User with the given email and password.
  8. """
  9. if not email:
  10. raise ValueError('Users must have an email address')
  11. user = self.model(
  12. email=CustomUserManager.normalize_email(email),
  13. username=username,
  14. is_active=True,
  15. )
  16. user.set_password(password)
  17. user.save(using=self._db)
  18. return user
  19. def create_superuser(self, username, email, password):
  20. u = self.create_user(username, email, password=password)
  21. u.is_admin = True
  22. u.is_staff = True
  23. u.save(using=self._db)
  24. return u
  25. class User(AbstractUser):
  26. objects = CustomUserManager()