Django:如何创建一个包含其他模型的所有字段的新模型(但与其无关)?
问题描述:
鉴于现有的Django模型:Django:如何创建一个包含其他模型的所有字段的新模型(但与其无关)?
class MyModel(models.Model):
field1 = ...
field2 = ...
...
fieldN = ...
我想建立一个完全独立的模型,看起来像这样:
class MyModel2(models.Model):
field1 = ...
field2 = ...
...
fieldN = ...
fieldA = ...
fieldB = ...
...
fieldZ = ...
多表继承不为我工作,我想MyModel2到由包含其所有字段的数据库表支持,而不仅仅是额外的字段以及指向MyModel表的链接。
如果我可以更改MyModel的定义,则定义抽象基类可能会有效。但有没有另一种方法,可能使用Python的元类?
我会使用抽象基类。对于这个元素魔法太聪明了。 – Alasdair 2012-02-20 11:41:37
https://docs.djangoproject.com/en/1.3/topics/db/models/#abstract-base-classes检查此 – Nilesh 2012-02-20 12:03:51