gpt4 book ai didi

Django:制作具有未定义字段数的模型

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

我正在尝试为文章网站创建模型。我想将每篇文章与 3-5 篇相关文章链接起来,所以我想到的是以这种方式创建代码:

class Article (models.Model):
# Tiny url
url = models.CharField(max_length = 30, unique=True)
is_published = models.BooleanField()
author = models.CharField(max_length = 150)
title = models.CharField(max_length = 200)
short_description = models.TextField(max_length = 600)
body = tinymce_models.HTMLField()
related1 = models.ForeignKey(Article)
related2 = models.ForeignKey(Article)
related3 = models.ForeignKey(Article)

但不确定是否可以与同一模型建立外键关系。另外,例如,如果我决定将 6、7 篇文章绑定(bind)在一起,那将如何工作,我是否必须在模型中编写 related4、5、6...?我想有更通用的解决方案,这样如果我绑定(bind)更多的文章,我就不需要一次又一次地重新定义代码

我想到的是不扩展相关领域的文章模型..(看起来很难看)也许值得创建另一个模型?例如:文章集

但是如何定义不受限制的列表(没有项目限制)..你能建议一种方法吗?

提前致谢

最佳答案

您需要使用 ManyToManyField对于这种关系。

例如:

class Article (models.Model):
# rest of fields up to and including body
related_articles = models.ManyToManyField("self")

关于Django:制作具有未定义字段数的模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1582486/

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