模型类表设计:
class User(AbstractUser): #继承原来的auth表,拓展字段,不要与原来有的字段名重复 username = models.CharField(max_length=15,unique=True) telephone = models.CharField(max_length=11,verbose_name='手机号码') role = models.IntegerField(choices=((1,'超级管理员'),(2,'管理员'),(3,'老师'),(4,'学生')),default=4,verbose_name='用户角色')
前后端分离项目下,在序列化器中:
class StudentsSerializer(serializers.Serializer): username = serializers.CharField() #用户名 telephone = serializers.CharField() #手机号号 role = serializers.CharField(source='get_role_display')#角色
在序列化器中,拿到中文字符串。
source='get_role_display' 如果这个就可以拿到角色中:老师、学生、管理员、超级管理等中文。