我正在使用 django-restful-framework 和 django 1.5
我无法发布。很难解释,所以让我们从例子开始。
模型.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)
序列化程序.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 显示任务的文本字段:
但是我在未填写任务字段的情况下发布时出现错误:
add() argument after * must be a sequence, not NoneType
有没有一种很好的方法可以将项目连接到任务,这样我就可以在没有任务的情况下创建项目,并在项目中创建尽可能多的任务?尽管模型中有不同的字段,但 /project 和 /task 也显示相同的表单。
我现在使用 django-rest-framework 默认视图来测试 api。
ps 我试图写得尽可能清楚,如果我遗漏了一些东西以获得更好的帮助,请告诉我。