我在理解 Django 中的多对多字段时遇到了一些麻烦。
当我创建一个多对多字段时,例如:
class GlobalPart (Models.model):
...
category_id=models.ManyToManyField(Category, related_name = 'globalpart')
...
和
class Category (Model.model):
...
category = models.CharField(max_length=250)
...
我注意到appname_globalpart_category_id
除了模型的appname_globalpart
表之外,它还创建了一个名为的新表GlobalPart
。
我想知道的是,该表中的字段类型应该如何定义。我认为应该至少有一个外键来关联这些字段。但取而代之的是表的主键,其他字段是整数(globalpart_id
和category_id
)。
所以我的问题是——这正常吗?还是我以某种方式错误地定义了多对多字段?我的下一个问题是如何将所有category_ids
关联到一个特定的GlobalPart
?