あなたは両方が必要になります:何のテーブルは単に親クラスのために作成されるべきでないようにinheritantsはまだ、具体的なモデルであるべき場合
abstract = True
が有用です。 multi-table inheritanceをオプトアウトして、代わりに継承テーブルに複製された共有属性を代わりに使用することができます(abstract base inheritance)。
managed = False
は、継承するクラスを決して永続化しない場合に便利です。 Djangoの移行やフィクスチャは、このためのデータベーステーブルを生成しません。
class TransientModel(models.Model):
"""Inherit from this class to use django constructors and serialization but no database management"""
def save(*args, **kwargs):
pass # avoid exceptions if called
class Meta:
abstract = True # no table for this class
managed = False # no database management
class Brutto(TransientModel):
"""This is not persisted. No table app_brutto"""
#do more things here
pass