1

最近、Django のモデル継承について学びました。私は素晴らしいパッケージdjango-model-utilsを使用して大成功を収めました。TimeStampedModel と SoftDeletableModel から継承しました。私の問題は、1 つのモデルから継承している間、継承しかできなかったことです。

私は今、両方のモデルから同時に継承したいと考えています。2 つのモデルを継承または結合する方法はありますか? これを行うにはどうすればよいですか?

PS: 継承するモデルの TimeStampedModel の前に SoftDeletableQuerySetMixin を配置して、それらを自分で結合しようとしましたが、問題が発生しました。また、django-model-utils にはすぐに使用できる優れたテストが付属していることもわかりました。それらを手動で組み合わせることに成功した場合、組み合わせたモデル用に新しいテストを作成する必要があると思いますね。これらのモデルを組み合わせるスマートな方法はありますか?

4

1 に答える 1

2

次のように、両方のモデルから拡張できるため、特別なことを行う必要はありません。

class MyModel(TimeStampedModel, SoftDeletableModel):
    # You will automatically get created, modified, and is_removed
    ...
于 2018-05-08T23:35:56.283 に答える