两种模型的外键可能性



假设我有两个模型,EntryPost。简单的模型,但它们共享几个字段(主题、描述等)……这只是假设,因为我还处于设计阶段)。我还有另一个字段,Acknowledgement,它只是EntryPostCustomer之间的关联。如果只对Entry关系实现,它看起来像这样:

class Acknowledgement(models.Model)
    entry = models.ForeignKey(Entry)
    customer = models.ForeignKey(Customer)

然而,我希望它能够作为EntryPostCustomer的连接表,而不是两者。我隐约熟悉通用键作为一种选项,但我不知道这是否是最好的方法,因为我希望将外键限制为这两种模型类型之一。有什么好的方法吗?

我要走的路线是:

覆盖模型Acknowledgement的save()方法,并在save()中检查关系是否正常,否则抛出异常。

最新更新