当前位置: 首页 > 知识库问答 >
问题:

在外键django中保存多个值

窦凯定
2023-03-14

我想在一个外键中保存多个关系对象,但不幸的是,我在下面附加了一个错误。我的数据库中已经有ID为189的对象

错误:

{
    "tags": [
        "Invalid pk \"189\" - object does not exist."
    ]
}

views.py

queryset = PackageRoom.objects.all()
serializer = PackageRoomSerializer(queryset, many=True)    
return Response(serializer.data)

序列化程序。派克

class PackageRoomSerializer(serializers.ModelSerializer):
    tags = serializers.PrimaryKeyRelatedField(queryset=PackageRoom.objects.all(), many=True)
    class Meta:
        model = PackageRoom
        fields = ['id', 'name', 'description', 'tags']

模型。派克

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'

共有1个答案

祁鸿晖
2023-03-14

我在序列化程序中传递PackageRoom模型,但我需要传递标记模型,这是一个愚蠢的错误。

class PackageRoomSerializer(serializers.ModelSerializer):
    tags = serializers.PrimaryKeyRelatedField(queryset=Tag.objects.all(), many=True)
    class Meta:
        model = PackageRoom
        fields = ['id', 'name', 'description', 'tags']
 类似资料:
  • 问题内容: 我有一张桌子,该桌子应该可以追踪从一家供应商向另一家供应商运送产品的天数和成本。我们(出色地:p)在产品供应商表中存储了运输供应商(FedEx,UPS)和产品处理供应商(Think … Dunder Mifflin)。因此,我的SHIPPING_DETAILS表中有三列,均引用VENDOR.no。由于某种原因,MySQL不允许我将全部三个都定义为外键。有任何想法吗? 编辑删除双主键定义

  • 问题内容: 我正在尝试对同一模型中的两个字段使用相同的外键,并且出现错误。 我正在尝试建立主要和辅助通话用户,但是在收到以下错误后不确定如何格式化关系 问题答案: 您必须为两个列定义不同的名称。例如: 另请参阅文档: 用于从相关对象到此对象的关系的名称。它也是(用于目标模型的反向过滤器名称的名称)的默认值。有关完整的解释和示例,请参见相关的对象文档。注意,在抽象模型上定义关系时必须设置此值。并且当

  • 问题内容: 无论如何,在Django中是否可以为双外键建模? 例如,如果我有以下表格:音频,覆盖,html和表格:timeline_item,它具有一个字段ID,以及一个指定音频,覆盖或html的字段类别… 有谁知道我将如何在Django中进行建模?甚至有可能吗? 问题答案: 听起来像是多态关联。也许您可以使用ContentTypes框架解决Django通用关系的问题。

  • 我试图保存多个记录通过 但是从上面来看,只创建了第一个数组。我哪里做错了?感谢您的帮助。

  • 我正在拉维尔创建一个项目。我有两个数据库表,它们是通过迁移创建的:我想在数据库模式中设置多个外键。 表用户 我想知道的是如何描述模型中的关系? 编辑: 我计划使用此关系,每个用户都属于部门,任何部门都有多个用户,每个用户只有一个部门

  • 我有一对一关系的问题-保存后,外键总是被设置为空,即使我有关联的对象。我正在使用Hibernate4.3。7.最终版本为Spring 4.0。0.0版本和MySql 5.6数据库。 在我保存LawFirmProfile对象列后的情况下,参考lawFirm的lawFirm_id始终为空。 实体: 以下是负责保存此记录的代码: Hibernate和Spring配置: 道也是Spring豆,方法注释为@