35 lines
892 B
Python
35 lines
892 B
Python
from django.contrib.auth.models import AbstractUser
|
|
from django.db import models
|
|
|
|
|
|
class User(AbstractUser):
|
|
ROLE_CHOICES = [
|
|
('superadmin', '超级管理员'),
|
|
('admin', '公司管理员'),
|
|
('seeker', '求职者'),
|
|
]
|
|
role = models.CharField(max_length=20, choices=ROLE_CHOICES, default='seeker')
|
|
phone = models.CharField(max_length=20, blank=True)
|
|
organization = models.ForeignKey(
|
|
'organizations.Organization',
|
|
null=True, blank=True,
|
|
on_delete=models.SET_NULL,
|
|
related_name='admins'
|
|
)
|
|
|
|
@property
|
|
def is_superadmin(self):
|
|
return self.role == 'superadmin'
|
|
|
|
@property
|
|
def is_admin(self):
|
|
return self.role == 'admin'
|
|
|
|
@property
|
|
def is_seeker(self):
|
|
return self.role == 'seeker'
|
|
|
|
class Meta:
|
|
verbose_name = '用户'
|
|
verbose_name_plural = '用户'
|