DRF 序列化器字段已重命名为经过验证的数据中的源

2023-12-24

我有一个 drf 序列化器,其中有一个我想重命名的字段:

class UserBulkUploadSerializer(serializers.Serializer):
    ...
    is_admin = serializers.BooleanField(required=False, source='administrator')

然而,在validated_data属性已重命名回source属性值。我正在这样做:

serializer = UserBulkUploadSerializer(data=data)
serializer.is_valid()
return serializer.validated_data

而且没有is_admin钥匙在那里,它是administrator.

有没有办法克服这个问题并做到这一点is_admin in validated_data?


我认为您需要添加两个字段,一个只写字段和一个只读字段。 像这样:

class UserBulkUploadSerializer(serializers.Serializer):
    ...
    administrator = serializers.BooleanField(required=False)
    is_admin = serializers.BooleanField(read_only=True, source='administrator')

    extra_kwargs = {
        'administrator': {'write_only': True},
    }

我还无法测试这个,所以我不确定具有相同源的两个字段是否会导致错误,否则你可以将 is_admin 更改为 SerializerMethodField。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

DRF 序列化器字段已重命名为经过验证的数据中的源 的相关文章

随机推荐

  • QLabel Qt/c++ 文本的渐变颜色

    我尝试为 QLabel 文本设置渐变颜色 我正在尝试使用 setStyleSheet 函数 但它不起作用 我阅读这篇文章 https www qtcentre org threads 32781 don t work qlineargrad
  • data.table join + update with mult='first' 给出了意想不到的结果

    在下面的示例中 我有一个用户表和一个事务表 其中一个用户可以有 0 个 1 个或多个事务 我执行连接 更新mult first 在 users 表上尝试插入一列 指示每个用户第一次发生事务的日期 library data table v1
  • 如何从 XLL UDF 返回数组

    我正在尝试使用 C API 为 Excel 编写一个数组构造函数作为工作表函数 Goal array cons 1 2 3 gt 1 2 3 但是 我没有正确初始化 XLOPER12 在 Excel 中 我的函数当前返回 NUM 我正在将参
  • 模块已经成功安装,但是导入时却找不到? - Python

    我正在尝试使用 graphviz Python 模块 但遇到了这个问题 我在命令提示符下安装了它 但它没有显示在 IPython 中 我还有一个 Python 3 5 32 位 解释器 它显示在其中 但我正在尝试弄清楚如何安装它 以便它在
  • 如何找出 Instruments 中保留对象的内容?

    我最近将我的 iOS 项目转换为 ARC 视图控制器之一没有调用其 dealloc 方法 并且没有根据 Instruments 进行释放 我已经仔细检查了我的所有属性并将适当的属性设置为弱 我还确保任何将视图控制器作为委托的东西都在 vie
  • ZLIB 解压 - 客户端

    我正在以 ZLIB 压缩输入流 使用 Javascript Ajax JQuery 我需要在客户端解压缩它 有办法这样做吗 我已经在 J AVA 中工作了 如下所示 但需要在客户端执行此操作 url new URL getCodeBase
  • 如何在S3中保存数据流? aws-sdk-go 示例不起作用?

    我正在尝试将给定的数据流持久保存到 S3 兼容存储中 在流结束之前 大小是未知的 大小可能从 5MB 到 500GB 不等 我尝试了不同的可能性 但没有找到比自己实现分片更好的解决方案 我最好的猜测是使用我的流填充固定大小的缓冲区并将其写入
  • 神经网络反向传播算法在Python中不起作用

    我正在用 Python 编写一个神经网络 遵循示例here http page mi fu berlin de rojas neural chapter K7 pdf 考虑到神经网络在训练一万次后未能产生正确的值 在误差范围内 反向传播算法
  • 使用jquery创建动态数组

    我需要一些关于 jquery 数组的帮助 var queryArr markersArray each function index var locationId index var locName markersArray index n
  • 如果线程已经忙,newSingleThreadScheduledExecutor 的工作

    我的要求是创建一个服务 在特定的时间间隔后继续检查队列并处理队列中的元素 为了在 10 秒后安排任务 我使用 ScheduledExecutorService schd Executors newSingleThreadScheduledE
  • Oracle 将行数据作为指定数量的唯一条目的列返回

    我有一个 Oracle 表 它按项目编号标识符充当项目的活动日志 更改跟踪器 我想获取最后三个更改并以列格式列出它们 样本数据 Item No Shipping date Last updated 100 01 Sep 16 24 Aug
  • 从 java 获取 Linux 发行版

    从java中 我得到了我正在工作的操作系统的名称 请参阅下面的代码 System out println System getProperty os name 在 windows xp 中 它打印如下 Windows XP 但在 ubunt
  • 在 Hbase shell 上运行多个查询,无需再次调用 hbase shell

    再次调用 shell 需要时间 我想通过调用 hbase shell 一次来执行多个命令 下面的代码仅运行单个查询 cmd echo put test row1 cf a value1 hbase shell 我想在单个 hbase she
  • 数组[1]会发生什么

    我有一大段代码 旨在获取一个数组并对其进行处理 在当前项目中只有一个元素 因此我没有将变量更改为 char 而是将其声明为 char 数组 1 这样 我不需要修改我的代码 也不需要冒添加任何错误的风险 并且如果需求增长 可以轻松地增加它 它
  • 在 C++11 之前,移动语义是如何解决的?

    我最近一直在阅读移动语义以及它是如何引入到 C 11 中的 主要要点是 通过 窃取 临时对象的指针来创建对象 程序可以变得更加高效 这比对临时对象进行深度复制来创建新对象要高效得多 在 C 11 及更高版本 中 这是通过使用右值引用来实现的
  • javascript从X,Y到X1,Y1的平滑动画

    我想慢慢地将图像 或元素 从其实际的 X Y 位置移动到 X1 Y1 当 的时候distanceX 和 X1 之间is equalY 和 Y1 之间的那个很容易 但是 如果 X 差异为 100 像素 Y 差异为 273 像素怎么办 作为 J
  • C++ 中“词法”一词意味着什么?

    我读到有词法常量 词法运算符 词法范围等 术语 词法 如何改变常量 例如字符串文字 任何运算符或某些标识符的范围的含义 词法 意味着它与源代码相关 例如 1是一个词汇常量 奥托 sizeof char 也是一个编译时整型常量表达式 但它不是
  • 在 PHP 中打印小于和大于符号

    我在尝试打印时遇到问题 lt gt 使用 PHP 编写 HTML 中的符号 我正在附加一个字符串
  • 如何向IDEA添加自定义构建脚本?

    有没有一种简单的方法来配置完全自定义的构建过程非Java项目在 IntelliJ IDEA 中 基本上 我只需要运行自定义 shell 命令 而不是任何更智能的构建过程 尝试将这些 shell 命令配置为自定义工具 文件 gt 设置 gt
  • DRF 序列化器字段已重命名为经过验证的数据中的源

    我有一个 drf 序列化器 其中有一个我想重命名的字段 class UserBulkUploadSerializer serializers Serializer is admin serializers BooleanField requ