0
我正在寻找正确的方法来覆盖子类的create()
方法。Django覆盖模型子类创建方法
基本上我这样做:
class Base(models.Model):
field1_base = models.IntegerField()
def __init__(self, field1_base):
# LOGICS
self.field1_base = field1_base
class A(Base):
field2_sub = models.IntegerField()
def __init__(self, field2_sub, field1_base):
# LOGICS
self.field2_sub = field2_sub
super(A, self).__init__(field1_base)
A(field2_sub=1, field1_base=2)
然而我们不能覆盖模型的__init__()
方法。
我只想让一些字段在基类的方法中分配。
是否有适当的方法使用create()
方法来完成此操作?
当然,我可以自定义的基类的create
方法,但我要的是对创建的,这使得从this question
可能复制到http://stackoverflow.com/questions/39483184/django-model-id-turns-into-a-tuple/39483272#39483272和http://stackoverflow.com/questions/843580 /写一个初始化的函数将在django模型中使用#843740 –
是的,你可以使用一个简单的classmethod,如答案 – armak
@SardorbekImomaliev解释很相似,我认为。但在我的情况下,我需要同时调用基础模型的方法。 – SolessChong