Допустим, у нас есть родительская абстрактная модель AModel
, которая определяет поле foo
:
class AModel(models.Model):
class Meta:
abstract = True
foo = models.TextField(max_length=500, db_index=True)
И у нас есть два класса абстрактных моделей BModel
и CModel
, которые наследуются от AModel
:
class BModel(AModel):
class Meta:
abstract = True
class CModel(AModel):
class Meta:
abstract = True
И у нас есть класс модели DModel
, который наследуется от BModel
и CModel
:
class DModel(BModel, CModel):
Проблема в том, что поле foo
будетконфликтует с самим собой, потому что он определен в двух родительских модельных классах.
Как решить эту проблему? Есть ли способ «Django», чтобы предотвратить такое поведение?