小编Rup*_*til的帖子

django在post/put中休息嵌套关系

我是django rest api developpement的新手.我有两个模型,一个是类别,另一个是子类别.这是我的模特

class Category(models.Model):
    title = models.Charfield()
    brief = models.TextField()
    subcategories = model.ManyToManyField('Subcategory', blank=True)    
Run Code Online (Sandbox Code Playgroud)

我的序列化程序类

class CategorySerializer(serializers.ModelSerializer):
    title= serializer.Charfield()
    subcategories = Relatedfield(many=True)
Run Code Online (Sandbox Code Playgroud)

现在在视野中

def post(self, request, format = None):
    data=request.DATA
    serialize= CategorySerializer(data=request.DATA)
    if serializer.valid():
        serializer.save()
Run Code Online (Sandbox Code Playgroud)

如何{'title':"test",'subscategories':[{'description':'bla bla bla'},{'description':'test test'}]}在post方法中保存嵌套数据.

我在文档中读过这个

注意:嵌套序列化程序仅适用于只读表示形式,因为如果在更新实例时使用它们,则会出现模糊或不明显的行为.对于读写表示,您应始终使用FlatField子类之一来使用平面表示.

请让我建议哪些是正确的方法或解决方案来做django休息的嵌套关系post/put.

django django-models django-views django-rest-framework

6
推荐指数
1
解决办法
2702
查看次数