私のモデル構造は次のとおりです。
class SuperModel(models.Model):
field_1 = models.CharField(max_length=20)
class child_A(supermodel):
class Meta:
proxy = True
class child_B(supermodel):
class Meta:
proxy = True
class Reference(models.Model):
child_a = models.ForeignKey(Child_A, blank=True, null=True)
child_b = models.ForeignKey(Child_B, blank=True, null=True)
super_model = models.ForeignKey(Child_C, related_name=supermodel)
私は実際に4人の子モデルを持っています。ポイントを作るために2を示しました。super_model
すべての子をチェックせずにスーパーモデルに到達できるように保管しています。スーパーモデルを参照する子は 1 人だけです。実行中に誰かがエラーを指摘できるというエラーが発生しReference has more than One Foreign key to Child_B.
ていrunserver
ます。
EDIT :super_model を Reference のフィールドとして、SuperModel から Reverse Relation を介して Reference にアクセスできるように保持しています。