25 lines
830 B
Python
25 lines
830 B
Python
from django.contrib.auth.models import AbstractUser
|
|
from django.db import models
|
|
|
|
class User(AbstractUser):
|
|
"""
|
|
自定义用户模型
|
|
"""
|
|
ROLE_CHOICES = (
|
|
('admin', '管理员'),
|
|
('user', '普通账号'),
|
|
)
|
|
|
|
role = models.CharField(max_length=20, choices=ROLE_CHOICES, default='user', verbose_name='角色')
|
|
factory = models.ForeignKey('factory.Factory', on_delete=models.SET_NULL, null=True, blank=True,
|
|
related_name='users', verbose_name='所属工厂')
|
|
phone = models.CharField(max_length=20, blank=True, null=True, verbose_name='手机号')
|
|
|
|
class Meta:
|
|
verbose_name = '用户'
|
|
verbose_name_plural = '用户'
|
|
db_table = 'auth_user'
|
|
|
|
def __str__(self):
|
|
return f"{self.username} ({self.get_role_display()})"
|