使用一个对象json发送许多json对象

时间:2013-08-15 16:38:07

标签: django django-rest-framework

我正在使用django-restful-framework和django 1.5

我无法发帖。很难解释所以让我们从例子开始。

Models.py

class Project(models.Model):
    project_name = models.CharField(max_length=100)
    project_description = models.CharField(max_length=100)


class Task(models.Model):
    project = models.ForeignKey(Project, related_name='task')
    task_title = models.CharField(max_length=100)

Serializer.py

class TaskSerializer(serializers.ModelSerializer):
    class Meta:
        model = Task
        fields = ('task_title')

class ProjectSerializer(serializers.ModelSerializer):
    task = TaskSerializer(many=True)

    class Meta:
        model = Album
        fields = ('project_name', 'project_description', 'task')

当我这样时,django-rest-framework中的viewsets.ModelViewSet显示任务的文本字段: enter image description here

但是我在没有填写任务栏的情况下发帖时给出了错误:

add() argument after * must be a sequence, not NoneType

有没有一种很好的方法将Project连接到任务,所以我可以创建没有任务的Project,并在项目中创建任意数量的任务?此外,/ project和/ task显示相同的表单,尽管模型中有不同的字段。

我正在使用django-rest-framework默认视图来测试api。

p.s我试图尽可能清楚地写出来,如果我错过了更好的帮助,请告诉我。

2 个答案:

答案 0 :(得分:1)

Django REST页面上,它显示:

Note that nested relationships are currently read-only.

“只读”会使发布变得有点困难;)

答案 1 :(得分:0)

使用“HyperlinkedRelatedField”来解决我的问题,只需要获取每个链接以检索信息。