Recruitment_site/offer_backend/apps/accounts/models.py

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 = '用户'