SlugRelatedField字段

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'
        ]

image

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

反序列化(常用)

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

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

image

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

posted @   zong涵  阅读(450)  评论(3编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示