Python 尝试通过Django Rest框架中的APIVIew发布详细信息时,OneTooneRatedField模型详细信息未填充
models.pyPython 尝试通过Django Rest框架中的APIVIew发布详细信息时,OneTooneRatedField模型详细信息未填充,python,django,django-rest-framework,Python,Django,Django Rest Framework,models.py class Address(models.Model): name=models.CharField(max_length=100,default='') place=models.CharField(max_length=100,default='') class wish(models.Model): created=models.DateField(auto_now_add=True) title=models.CharFi
class Address(models.Model):
name=models.CharField(max_length=100,default='')
place=models.CharField(max_length=100,default='')
class wish(models.Model):
created=models.DateField(auto_now_add=True)
title=models.CharField(default='',null=True,blank=True,max_length=100)
wishtext=models.CharField(max_length=1000)
address=models.OneToOneField(Address,null=True,on_delete=models.CASCADE,)
serializers.py文件
class WishSerializer(serializers.ModelSerializer):
class Meta:
model = wish
fields = ['id','title','wishtext','address']
depth=1
views.py
class WishList(generics.ListCreateAPIView):
#permission_classes = [permissions.IsAuthenticated]
queryset=wish.objects.all()
serializer_class = WishSerializer
注:
我能够得到所有的细节,包括地址模型的细节。
但当我试图发布详细信息时,只能看到愿望模型字段,而不能看到地址对象下拉字段。
请在这方面帮助我?您可以通过在
ModelSerializer
把你的创作逻辑放在那里
它实际上在可写嵌套序列化程序部分中提到。,这里有一个很好的例子。实际上,我已经从WishSerializer类中删除了depth=1,然后可以看到下拉列表。我认为还有一种方法是重写create方法。