SlugRelatedField字段

该字段用于外键字段
该字段在序列化的时候多用于反向查询,在反序列化的时候用于接收关联表的唯一字段来生成该关联对象
eg:

序列化

class PublishListSerializer(serializers.ModelSerializer):
    book = serializers.SlugRelatedField(
        many=True,
        slug_field='title',
        read_only=True
    )

    class Meta:
        model = Publish
        fields = [
            'name',
            'addr',
            'book'
        ]

SlugRelatedField字段

多用于在反向查询的时候,让外键字段返回多个指定的关联表字段(说实话用处不大)

反序列化(常用)

class CreateBookSerializer(serializers.ModelSerializer):
    publish = serializers.SlugRelatedField(
        queryset=Publish.objects.all(),  # 指定关联表
        slug_field='uuid'  # 该字段参数是指定关联表的字段(需要唯一)
    )

    class Meta:
        model = Book
        fields = [
            'title',
            'price',
            'publish'
        ]

SlugRelatedField字段

这样就可以直接新增数据的时候直接关联到关联表对象,意思就是传你指定的字段参数,然后会帮你找到该关联表的对象,然后就可以进行新建操作,把新对象关联上关联表对象

Original: https://www.cnblogs.com/zonghan/p/16739229.html
Author: zong涵
Title: SlugRelatedField字段

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/612271/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • Common LISP 命令大全

    书籍下载地址: Ansi Common Lisp 中文版|百度网盘 实用Common.Lisp编程 .pdf|百度网盘 LISP指令速查网站推荐: Simplified Commo…

    Linux 2023年6月6日
    0123
  • Redis

    Redis原创笑笑师弟 最后发布于2018-12-21 14:17:59 阅读数 1780 收藏展开目录 redis简介 redis功能 redis学习步骤 windows系统下的…

    Linux 2023年5月28日
    0103
  • Linux 如何设置开机自启动脚本

    https://blog.csdn.net/weixin_40343504/article/details/82457990 Original: https://www.cnblo…

    Linux 2023年6月13日
    0105
  • 罗德岛

    自从转行以后就建博了,一直没有动手写内容,今天开始写。 主要记录技术上的积累和项目上的工作感悟。 这里就是罗德岛,就在这里跳。 Original: https://www.cnbl…

    Linux 2023年6月6日
    089
  • 我可以不在校园

    我在校园自动打卡,仅作学习使用。 我在校园自动打卡,仅作学习使用 直达电梯:我可以不在校园 posted @2021-11-19 17:38 DominicKK 阅读(258 ) …

    Linux 2023年6月8日
    0113
  • python向access插入数据,报语法错误的一个解决思路(-2147352567,’发生意外。’)

    工作中遇到一个古老的程序,数据库使用的事access,想用python批量导入数据,报” INSERT INTO 语句的语法错误”。 但是,将插入语句放到a…

    Linux 2023年6月14日
    081
  • 【设计模式】Java设计模式-组合模式

    Java设计模式 – 组合模式 😄 不断学习才是王道🔥 继续踏上学习之路,学之分享笔记👊 总有一天我也能像各位大佬一样🏆原创作品,更多关注我CSDN: 一个有梦有戏的人…

    Linux 2023年6月6日
    0122
  • [Git系列] 前言

    Git 简介 Git 是一个重视速度的分布式版本控制和代码管理系统,最初是由 Linus Torvalds 为开发 Linux 内核而设计并开发的,是一款遵循二代 GUN 协议的免…

    Linux 2023年5月27日
    0145
  • Linux——防火墙、SELinux规则

    防火墙的功能:简单地释放或阻止某些服务和端口 [En] The function of firewall: simply to release or block certain s…

    Linux 2023年5月27日
    091
  • SWAP交换分区扩容

    第一章 扩容当前swap 交换分区 注:这种需要停止当前业务,否则会产生影响 [17:09:31 root@libin3 ~]# free -h total used free s…

    Linux 2023年6月13日
    093
  • ssh remote forward 监听 0.0.0.0 端口;How to make SSH remote port forward that listens 0.0.0.0

    今天使用ssh转发内网服务的时候,发现remote forward 转发到远程,监听的端口都是localhost。 之前还没发现这种情况,因为都是在所转发的目的主机使用服务。今天,…

    Linux 2023年5月27日
    0102
  • Linux下如何部署FTP服务器

    FTP 是 File Transfer Protocol 的缩写,即文件传输协议,它通过网络在服务器和客户端之间传输文件,现在已经成为一种广泛使用的标准工具 vsftpd 是 ve…

    Linux 2023年6月13日
    091
  • Nginx笔记

    实现负载均衡 这里采用的是权重 进入配置文件目录cd /usr/local/nginx/conf/ //实际根据自己的目录来 编辑vim nginx.conf 这段代码上方加入自定…

    Linux 2023年6月14日
    0103
  • 如何写好倒计时

    引言 本文讲解倒计时为什么建议使用 setTimeout而不使用 setInterval,倒计时为什么存在误差,以及如何解决。 倒计时器 在前端开发中,倒计时器功能比较常见,比如活…

    Linux 2023年6月7日
    0330
  • Android系统中有哪些日志信息和工具

    Android系统日志和工具 我们经常需要查看设备里面的各种日志信息。所以有必要了解android系统里面有哪些日志,以及用什么方式可以提取这些日志。以我手头的红米note4xpl…

    Linux 2023年6月7日
    095
  • python操作MySQL;MySQL补充知识

    目录 1.python操作MySQL 2.SQL注入及解决方式 3.二次确认 4.修改表SQL语句补充 5.视图 6.触发器 7.事务 8.存储过程 9.函数 10.流程控制 11…

    Linux 2023年6月7日
    0107
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球