假设我有两个模型,Entry
和Post
。简单的模型,但它们共享几个字段(主题、描述等)……这只是假设,因为我还处于设计阶段)。我还有另一个字段,Acknowledgement,它只是Entry
或Post
与Customer
之间的关联。如果只对Entry
关系实现,它看起来像这样:
class Acknowledgement(models.Model)
entry = models.ForeignKey(Entry)
customer = models.ForeignKey(Customer)
然而,我希望它能够作为Entry
或Post
和Customer
的连接表,而不是两者。我隐约熟悉通用键作为一种选项,但我不知道这是否是最好的方法,因为我希望将外键限制为这两种模型类型之一。有什么好的方法吗?
我要走的路线是:
覆盖模型Acknowledgement的save()方法,并在save()中检查关系是否正常,否则抛出异常。