我想在子模型中覆盖一个字段。
我的基础模型
class AbstractProduct(models.Model):
...
structure = models.CharField(
_("Product structure"), max_length=10, choices=STRUCTURE_CHOICES,
default=STANDALONE)
现在我将这个模型子类化为其他模型
class Product(AbstractProduct):
....
structure = models.CharField(
_("Product structure"), max_length=10, choices=STRUCTURE_CHOICES2,
default=STANDALONE)
我得到错误:
django.core.exceptions.FieldError: Local field 'structure'
in class 'Product' clashes with field of similar name
from base class 'AbstractProduct'
This answer表示不可能。但似乎是一个老帖子。还尝试将def __init__
作为提到的答案中的一个,但仍然无济于事。有没有解决办法或仍然不可能?