首页 > 其他分享 >在该serializer中使用source参数指定序列化时使用的字段的choices选项

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

时间:2024-04-24 09:23:28浏览次数:25  
标签:choices source serializer time 序列化 display unit

在序列化中获取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字段的中文名称。

标签:choices,source,serializer,time,序列化,display,unit
From: https://www.cnblogs.com/beichengshiqiao/p/18154345

相关文章

  • 序列化模块,subprocess模块,re模块,常用正则
    Ⅰ序列化模块【1】json模块'''json模块是一个序列化模块,主要用于跨语言传输'''1.由下图可知json格式数据是不同编程语言之间数据交互的媒介2.json格式数据的具体特征 结论一中:数据基于网络传输肯定是二进制格式在python中bytes类型的数据可以直接看成是二进制格式......
  • Resource Hacker 修改程序图标资源
    使用ResourceHacker之类的工具改动程序文件中关于图标资源的文件(主程序exe或一个专门的资源dll),将你的个性化图标替换相应位置的默认图标。这种方法会改动程序文件,改动后程序有可能报错或无法启动。ResourceHacker修改图标后会自动给原图标做个备份命名为xxx_original所以不用......
  • DRF之序列化组件
    【二】序列化组件【1】序列化与反序列化的概念序列化(Serialization):将对象转换为可传输或可存储的格式的过程。在序列化过程中,对象的属性和数据被转换为一个字节流或字符串,以便在网络上传输或保存到文件中。常见的序列化格式包括JSON、XML、ProtocolBuffers等。序列化后的数......
  • SnakeYaml反序列化分析
    前言SnakeYaml是Java中解析yaml的库,而yaml是一种人类可读的数据序列化语言,通常用于编写配置文件等。yaml真是到哪都有啊。环境搭建<dependency><groupId>org.yaml</groupId><artifactId>snakeyaml</artifactId><version>1.32</version></dependency>SPI机制介绍......
  • 反序列化死亡exit绕过
    又做了一个反序列化,发现一个知识点。[羊城杯2020]easyser点击查看代码<?phperror_reporting(0);if($_SERVER['REMOTE_ADDR']=="127.0.0.1"){highlight_file(__FILE__);}$flag='{Trump_:"fake_news!"}';classGWHT{public$hero;......
  • 序列化类源码分析
    序列化类源码分析​ 我们主要带着两个问题取探究反序列化类校验是如何走的局部钩子和全局钩子序列化类实例化分单条和多条,它们实例化得到的对象是不一样的(不同的类)单条和多条的序列化类的实例化​ 首先当我们去查多条和查一条时,会在我们定义的序列化类传入参数many=True/......
  • Environment variable $SOURCE_DATE_EPOCH: No digits were found:
    一、报错信息Environmentvariable$SOURCE_DATE_EPOCH:Nodigitswerefound: 二、解决方法1、修改build/main.mk核心操作如下:①makefile增加【fix】项,为了执行【date+%s>version.date】②makefile的【world】后面增加依赖【fix】 2、成型后的m......
  • JTCR-I/O,Try-with-Resources 及其他-11
    I/O基础Java的I/O操作通过流来实现。流是对输入、输出数据的抽象,每个流都和一个具体的物理实体关联,比如在输入中,流可以和键盘、磁盘文件或者网络输入等关联,虽然每个物理实体不同,但是流可以以同样的方式进行处理。Java定义了字节流和字符流。字节流处理的对象是二进制数据,以......
  • 新手大白话 [SWPU 2018]SimplePHP Phar反序列化
    今天再做个Phar反序列化巩固下。进入题目发现了查看文件与上传文件,与自己的IP。利用burp抓包进行查看,先尝试index.php,发现base.php,查看base.php发现flag所在文件,再查看file.php,发现function.phpclass.php点击查看代码class.php<?phpclassC1e4r{public$t......
  • WPF relativesource,self,FindAncestor,AncestorType,AncestorLevel,PreviousData,Tem
    <Windowx:Class="WpfApp68.MainWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d="http://schemas.microsoft.com......