Advertisement
Guest User

Untitled

a guest
Aug 12th, 2017
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.38 KB | None | 0 0
  1. class UserManager(BaseUserManager):
  2.  
  3. def create_user(self, username , password = None, name = None, surname = None, birthDate = None, hometown = None):
  4.  
  5. user = self.model(
  6. username = username,
  7. name = name,
  8. surname = surname,
  9. birthDate = birthDate,
  10. hometown = hometown,
  11. )
  12.  
  13. user.set_password(password)
  14.  
  15. user.save(using=self._db)
  16.  
  17. return user
  18.  
  19. def create_superuser(self, username , password = None, name = None, surname = None, birthDate = None, hometown = None):
  20.  
  21. user = self.model(
  22. username = username,
  23. name = name,
  24. surname = surname,
  25. birthDate = birthDate,
  26. hometown = hometown,
  27. )
  28.  
  29. user.set_password(password)
  30.  
  31. user.is_admin = True
  32. user.save(using=self._db)
  33.  
  34. return user
  35.  
  36.  
  37. class User(AbstractBaseUser):
  38.  
  39. username = models.CharField(max_length = 100, unique=True)
  40. password = models.CharField(max_length = 100)
  41. name = models.CharField(max_length = 100)
  42. surname = models.CharField(max_length = 100)
  43. birthDate = models.DateTimeField()
  44. hometown = models.CharField(max_length = 100)
  45. is_active = models.BooleanField(default=True)
  46. is_admin = models.BooleanField(default=False)
  47.  
  48. objects = UserManager()
  49.  
  50. USERNAME_FIELD = 'username'
  51. REQUIRED_FIELDS = ['']
  52.  
  53. def get_full_name(self):
  54. return '{} {}'.format(self.name, self.surname)
  55.  
  56. def get_short_name(self):
  57. return '{} {}'.format(self.name, self.surname)
  58.  
  59. def has_perm(self, perm, obj=None):
  60. return True
  61.  
  62. def has_module_perms(self, app_label):
  63. return True
  64.  
  65. def set_admin(self):
  66. self.is_admin = True
  67.  
  68. @property
  69. def is_staff(self):
  70. return self.is_admin
  71.  
  72. def __str__(self):
  73. return '{} {}'.format(self.name, self.surname)
  74.  
  75. def auth(self, login, password):
  76. if login == self.username and password == self.password:
  77. return True
  78. return False
  79.  
  80. from rest_framework import viewsets
  81. from .serializers import *
  82. from society.models import User
  83.  
  84. class UserViewSet(viewsets.ModelViewSet):
  85. queryset = User.objects.all()
  86. serializer_class = UserSerializer
  87.  
  88. class UserSerializer(serializers.ModelSerializer):
  89. class Meta:
  90. model = User
  91. fields = [
  92. 'username',
  93. 'password',
  94. ]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement