[英]Save multiple relational objects in foreign key django
我想在模型之間建立一對多的關系,在 Django 中,我們需要使用 ForeignKey。 我將從前端數組中的關系對象的多個ID,但我很困惑,我將如何保存這些多個關系object? 每個 package 房間可以有多個標簽,但標簽只有一個 package 房間。
模型.py
class Tag(models.Model):
name = models.CharField(max_length=255, default='')
description = models.CharField(max_length=255, default='')
singleline = models.ManyToManyField(Singleline)
class Meta:
db_table = 'tags'
class PackageRoom(models.Model):
name = models.CharField(max_length=255, default='')
tags = models.ForeignKey(Tag, on_delete=models.PROTECT)
class Meta:
db_table = 'package_rooms'
JSON object 我將從前端收到
{
"name": "Test Room",
"tags": [1, 2, 3, 4, 5] // IDs of Tags
}
您可以在序列化程序中使用PrimaryKeyRelatedField
並設置它的many=True
:
class PackageSerializer(serializers.ModelSerializer):
tags = serializers.PrimaryKeyRelatedField(queryset=PackageRoom.objects.all(), many=True)
class Meta:
model = PackageRoom
fields = ("name", "tags")
文檔是: https://www.django-rest-framework.org/api-guide/relations/#primarykeyrelatedfield
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.