【发布时间】:2014-11-18 01:27:16
【问题描述】:
我试图在一个 POST 中创建一个对象及其对多关系,但我不断收到 400 'attribute': 'This field is required,我如何在一个 POST 中创建这种关系的双方?
我现在拥有的是:
class Attribute(models.Model):
name = models.CharField(max_length=100)
class Value(models.Model):
name = models.CharField(max_length=100)
attribute = models.ForiegnKey(Attribute, related_name="allowed_values")
具有相关名称的相当标准的一对多关系。我的序列化器看起来像
class ValueSerializer(serializers.ModelSerializer):
class Meta:
model = Value
class AttributeSerializer(serializers.ModelSerializer):
class Meta:
model = Attribute
allowed_values = ValueSerializer(many=True)
我的数据是:
{'name': 'new attribute',
'allowed_values': [{'name': 'value1'}, {'name':'value2'}, {'name':'value3'}]}
在阅读源代码时,我看到一些看起来应该弹出相关值字段的内容,直到属性对象被保存后,但我似乎无法让序列化程序像这样调用。
【问题讨论】:
标签: django django-rest-framework