gpt4 book ai didi

django-rest-framework - 我如何在 django 的一个序列化器中拥有两个模型

转载 作者:行者123 更新时间:2023-12-04 11:43:05 30 4
gpt4 key购买 nike

我使用 django rest 框架创建了 API View ,我有一个模型,其中包含状态列表,并且它通过国家(由列表国家组成)外键与另一个名为国家的模型相关联我试图插入新状态 (例如:糖果类别下的樱桃,垃圾食品类别下的汉堡,与“国家类别下的国家”完全一样) 但我只得到国家输入表格,而没有让国家选择和关联,

## Heading ##
#model code---
class states(models.Model):
state = models.CharField(max_length=15)
country = models.ForeignKey(countries, on_delete=models.PROTECT)

#serializers code---
class StatesDetailSerializer(ModelSerializer):
class Meta:
model = states
fields= '__all__'
depth = 1

#viewsets code ------
class StateCreateAPIView(CreateAPIView):
queryset = states.objects.all()
serializer_class = StatesDetailSerializer

我附上了一张图片,教我如何获取国家数据并与州关联。如何获取要选择的国家列表并标记到州
image here

最佳答案

扩展您的序列化程序以包含这样的国家/地区字段

class StatesDetailSerializer(ModelSerializer):

country = serializers.PrimaryKeyRelatedField(queryset=countries.objects.all())

class Meta:
model = states
fields= ( 'country', ** plus all the fields you want **)
depth = 1

注意:不要使用 __all__为领域。最好明确说明要序列化的字段(以避免应用程序中的潜在漏洞)

关于django-rest-framework - 我如何在 django 的一个序列化器中拥有两个模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51323922/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com