簡體   English   中英

Django模型:親戚模型是否應該通過ForeignKey或ManyToMany引用自身?

[英]Django Models: Should a relatives model refer to itself through ForeignKey or ManyToMany?

我正在創建一個django應用程序,其中的模型類Character擁有親戚,而親戚實際上是其他Character模型。 但是,我不確定該如何設置。 現在,我正在考慮使用這樣的東西:

class Character(models.Model):
    name = models.CharField()
    sex = models.CharField()
    link = models.URLField()
    appearance = models.ManyToManyField(Episode, related_name="characters")
    relatives = models.ForeignKey('self', related_name="characters")

但是,我不確定這是否正確...也許我應該使用ManyToManyField? 角色的一個例子就是蒂姆。 蒂姆有親戚,鮑比,大衛和胡須。 鮑比有親戚大衛和蒂姆。 大衛有親戚鮑比和蒂姆。 晶須有相對的蒂姆。 另外,如果一個班級的字段指向同一班級,這會成為問題嗎? 謝謝。

if a class's field points to the same class, will this be an issue?

這不是問題,大多數sql數據庫都支持。 閱讀有關自連接的更多信息以了解這一點。

maybe I should use ManyToManyField?

是的,許多人是前進的道路,因為一個人可以有許多親戚,而他本人可以是許多其他人的親戚。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM