版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010377372/article/details/80354477
重要是的将需要显示的字段重新声明并且添加source参数,代码如下
# models.py
class User(AbstractUser):
GENDER_CHOICES = (
('M', 'Male'),
('F', 'Female'),
)
gender = models.CharField(max_length=1, choices=GENDER_CHOICES)
# serializers.py
class UserSerializer(serializers.ModelSerializer):
gender = serializers.CharField(source='get_gender_display') #####!!!!!!!!!!!关键代码
# 要想显示为 display_name 需要重新声明 gender字段,并且添加source参数 ,参数中的 get_gender_display依据你的字段而改变
# 如你的字段是 haha,那么 source参数的值就是 get_haha_display
class Meta:
model = User
声明属性并且添加source参数之后将序列化为
Male 或者 Female
不声明属性或者未添加source参数都将序列化为
M 或者 F