首页 > 解决方案 > Django中的派生模型分配

问题描述

B考虑从模型派生的Django模型A

class A(models.Model):
    # ...

class B(A):
    # ...

现在让模型C参考A

class C(models.Model):
    a = models.ForeignKey('A')

让我们有一个cclass的对象C

(类的对象c.a = b在哪里)会做正确的事,分配not of的主键吗?bBAB

标签: pythondjangodjango-models

解决方案


A及其派生模型B具有相同的主键,因为它实现为OneToOneField.

因此,它是主键A还是 of 的B问题没有意义,它是相同的主键值 forA和 for B

简而言之:分配c.a = b按预期工作,因为只有一个主键b需要考虑。


推荐阅读