自动将Django模型的表名设置为其类的名称

时间:2018-07-18 19:40:38

标签: django python-3.x django-models

当前,我的大多数模型如下:

class A(models.Model):
    # model attributes
    class Meta:
        db_table = 'A'

class B(models.Model):
    # model attributes
    class Meta:
        db_table = 'B'

有没有一种方法可以自动执行此操作?我尝试在定义类后添加元类,但是由于Django如何处理模型的元类,因此不起作用。我只是在手工定义Meta类吗?

1 个答案:

答案 0 :(得分:0)

不确定为什么要这样做,但是可以执行以下操作:

for model in models:
    model._meta.db_table = model.__class__.__name__