在Model类的定义中的这里调用了Model父类的__init__()
def __init__(self, **kw): super(Model, self).__init__(**kw)
这里的父类仅仅是dict类还是包括ModelMetaClass?
另外我理解是Model类定义时相当于
Model = ModelMetaClass.__new__('Model', (dict,), attrs)
不知道是否正确?
但如果在ModelMetaClass 里加入__init__()的如下定义
def __init__(self): pass
在创建Model 类时就会报错, 请问是什么原因造成的?
如果ModelMetaClass 类创建时相当于
ModelMetaClass = type('ModelMetaClass', (type,), attrs)
而当使用ModelMetaClass()时才会调用__init__(),那么好像就看不出来什么时候调用了ModelMetaClass的__init__()。
Sign in to make a reply
雾里看虾
在Model类的定义中的这里调用了Model父类的__init__()
这里的父类仅仅是dict类还是包括ModelMetaClass?
另外我理解是Model类定义时相当于
不知道是否正确?
但如果在ModelMetaClass 里加入__init__()的如下定义
在创建Model 类时就会报错, 请问是什么原因造成的?
如果ModelMetaClass 类创建时相当于
而当使用ModelMetaClass()时才会调用__init__(),那么好像就看不出来什么时候调用了ModelMetaClass的__init__()。