gpt4 book ai didi

django - 在 Django 模型中的表之间链接外键

转载 作者:行者123 更新时间:2023-12-04 10:05:59 24 4
gpt4 key购买 nike

我刚刚开始使用 Django,所以请帮助我解决我的疑问。目前,我有三个表 Topic、Webpage 和 AccessRecord。在第三个表 AccessRecord 中,我在第二个表网页中使用了外键。但是网页表具有主题、名称和 URL 三个属性..所以我怀疑这三个属性中的哪个属性将被视为 AccessRecord 表的外键。
任何帮助将不胜感激。

class Topic(models.Model):

top_name = models.CharField(max_length=264,unique = True)

def __str__(self):

return(self.top_name)

class Webpage(models.Model):

topic = models.ForeignKey(Topic,on_delete=models.CASCADE)
name = models.CharField(max_length=264,unique=True)
url = models.URLField(unique=True)

def __str__(self):

return self.name

class AccessRecord(models.Model):

name = models.ForeignKey(Webpage,on_delete=models.CASCADE)
date = models.DateField()

def __str__(self):
return str(self.date)

最佳答案

实际上,ForeignKey 关系来自 AccessRecordWebpage对象,仅驻留在 AccessRecord . Webpage 之间没有直接关系到 AccessRecord 对象 .相反,django 提供了一个 reverse relationship 您可以在哪里访问 查询集 AccessRecord来自 Webpage目的。像这样:

webpage = Webpage.objects.first()  # an object
records = webpage.accessrecord_set.all() # a queryset

如果您遍历 records上面给出的变量,你应该得到 AccessRecord目的。像这样:
for record in records:
print(record) # an AccessRecord object

关于django - 在 Django 模型中的表之间链接外键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61584945/

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