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
私が疑問に思っているのは、そのテーブルのフィールド タイプをどのように定義する必要があるかということです。フィールドを関連付けるために少なくとも1つの外部キーが必要だと思います。ただし、代わりにテーブルの主キーがあり、他のフィールドは整数 (globalpart_id
およびcategory_id
) です。
だから私の質問は - それは普通ですか? それとも、多対多フィールドを間違って定義したのでしょうか? category_ids
そして私の次の質問は、特定の に関連付けられたすべてをどのように取得するのかということGlobalPart
です。