gpt4 book ai didi

django - Django 中的弱实体

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

有人可以解释一下如何在 Django 中表示弱实体关系吗?

我在django的文档中搜索过,没找到。在此处发布问题之前,我什至在 google 和 stackoverflow 上进行了搜索。

如果无法表示弱实体关系,请告诉我在 django 中最合适的替代方法是什么

更新:

我正在开发一个电子学习网站,因此有一个 Course 类,其属性如 titledescriptioncreator 等,我想添加一个名为 "Week" 的弱实体(为 course 存储按周计算的内容),它将附加到这个强实体名为 Course 的实体,我想要 Course 类的 course_idWeekweek_no类充当 Week 类中每个条目的 主键

最佳答案

好吧,让我们以 wikipedia 中的这个例子为例

您有一个类订单和一个类产品。

然后您将拥有一个类 OrderItem,它将成为弱实体。

class Order(models.Model):
some_attributes

class Product(models.Model):
some_other_attributes

class OrderItem(models.Model)
order = models.ForeignKey(Order)
product = models.ForeignKey(Product)
other_attributes

class Meta:
unique_together = (order, product)

unique_together 元属性将确保每个 OrderItem 不会超过一个重复这两个值的数据库条目。

我认为这可能与您正在寻找的内容不完全匹配,但这可能是一个开始。如果您提供有关您要完成的目标的更多详细信息,也许我可以帮助您进行一些表格调整,甚至查询示例以使用这种方法获取数据。

编辑:你是对的,没有弱实体场这样的场。我的建议是您像对待任何其他人一样对待周模型。并将其链接到类(class)模型,如下所示:

 class Course(models.Model):
title = models.CharField()
description = models.CharField()
etc..

class CourseWeek(models.Model):
course = models.ForeignKey(Course)
week_number = models.IntegerField()
topic = models.CharField()
slideshow = models.FileField()

class Meta:
unique_together = ('course' , 'week_number')

希望这有帮助:)

关于django - Django 中的弱实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22577060/

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