小编Joh*_*ork的帖子

DRF:使用嵌套序列化程序进行简单的外键分配?

使用Django REST Framework,标准的ModelSerializer将允许通过将ID作为整数进行POST来分配或更改ForeignKey模型关系.

从嵌套的序列化器中获取此行为的最简单方法是什么?

注意,我只讨论分配现有数据库对象,而不是嵌套创建.

我过去已经在序列化程序中添加了"id"字段以及自定义createupdate方法,但这对我来说是一个看似简单且常见的问题,我很想知道最好的方法.

class Child(models.Model):
    name = CharField(max_length=20)

class Parent(models.Model):
    name = CharField(max_length=20)
    phone_number = models.ForeignKey(PhoneNumber)
    child = models.ForeignKey(Child)

class ChildSerializer(ModelSerializer):
    class Meta:
        model = Child

class ParentSerializer(ModelSerializer):
    # phone_number relation is automatic and will accept ID integers
    children = ChildSerializer() # this one will not

    class Meta:
        model = Parent
Run Code Online (Sandbox Code Playgroud)

python django django-rest-framework

52
推荐指数
3
解决办法
2万
查看次数

标签 统计

django ×1

django-rest-framework ×1

python ×1