Я хотел бы использовать свойства мета-класса наследуемой модели для настройки поля, определенного в абстрактной модели, выше дерева наследования:
class NamedModel(models.Model):
class Meta:
abstract = True
verbose_name = 'object'
name = models.CharField("Name",
max_length=200,
db_index=True,
help_text="A meaningful name for this %s." % Meta.verbose_name)
# see what I'm trying to do here?
)
...
class OwnedModel(NamedModel):
class Meta(NamedModel.Meta):
verbose_name = 'owned object'
Мне бы хотелось, чтобы текст справки в поле имени форм OwnedModel сказал «Значимое имя для этого объекта». Но это не : отсутствует слово «ведомый», что предполагает использование verbose_name из NamedModel.Meta при настройке модели, а не OwnedModel.Meta.
Это не совсем то, что я ожидаю с точки зрения наследования: есть ли способ получить поле, которое будет создано, с помощью которого Meta.verbose_name ссылается на значение в классе неабстрактной модели, а не на абстрактное значение в какое поле было определено?
Или я ненормальный?
(Это может показаться тривиальным примером, и это так: но это просто для иллюстрации смысла чего-то более важного и сложного, что я пытаюсь сделать)
Большое спасибо заранее.