Django +(django-model-utils):结合两个模型/继承两个模型

时间:2018-05-07 09:41:31

标签: python django inheritance django-models django-model-utils

我最近在Django中了解了模型继承。我使用了很棒的包django-model-utils来使用它取得了很大的成功。我继承了TimeStampedModel和SoftDeletableModel。 我的问题是,我只是在从一个模型继承时设法继承。

我现在想同时继承这两个模型。有没有办法从两个模型继承或组合它们?我最好怎么做呢?

PS:我试图通过将SoftDeletableQuerySetMixin放在继承的模型中的TimeStampedModel前面来自己组合,但它破坏了一些东西。另外我看到django-model-utils带有开箱即用的优秀测试,当我成功手动组合它们时,我想我必须为组合模型编写新的测试,不是吗?有没有一种聪明的方法来组合这些模型?

1 个答案:

答案 0 :(得分:1)

您不必做任何特别的事情,因为您可以从两个模型扩展,例如:

class MyModel(TimeStampedModel, SoftDeletableModel):
    # You will automatically get created, modified, and is_removed
    ...