微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在该serializer中使用source参数指定序列化时使用的字段的choices选项

在序列化中获取time_unit字段的中文名称,你可以使用choices选项中定义的第二个值,即元组中的第二个元素。你可以通过定义一个serializer,然后在该serializer中使用source参数指定序列化时使用的字段,如下所示:

from rest_framework import serializers

class WK006HModelSerializer(serializers.ModelSerializer):
    time_unit_display = serializers.CharField(source='get_time_unit_display')

    class Meta:
        model = WK006HModel
        fields = ('fa_no', 'dp_no', 'item_no', 'time_unit', 'time_unit_display')

在这个serializer中,time_unit_display字段使用了source参数来指定了get_time_unit_display,它会调用time_unit字段的get_FOO_display方法,其中FOO是你的time_unit字段名,这个方法会返回你在choices选项中定义的第二个值,即中文名称

现在,当你对WK006HModel对象进行序列化时,time_unit_display字段会包含time_unit字段的中文名称

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐