如何在models.py中使用基类,但不要让django为基类创建一个表



可能重复:
Django模型。模型超类

默认情况下,如果您继承了一个模型类,django将为基类创建一个单独的表。有没有任何方法可以使用基类(这样我就可以在所有派生模型中拥有相同的列),但不让django创建该基表,而是创建具有所有相同列的派生表?

例如:

class MyBaseModel(models.Model):
    createdate = models.DateTimeField(auto_now_add=True) 
class A(MyBaseModel):
    nameA ...
class B(MyBaseModel):
    nameB ...
#I want 2 tables created, A with 2 columns(nameA, createdate) and B with 2 columns.

这可能吗?

是。阅读文档:https://docs.djangoproject.com/en/dev/topics/db/models/#model-继承

基类应包含:

class Meta:
    abstract = True

最新更新