Допустим, я хочу определить следующую модель в Django:
class Customer(models.Model):
age = models.IntegerField()
class Meta:
managed = False
db_table = 'Customer'
Я знаю, что могу использовать type
в Python для определения классов. Например, следующий класс:
class Test(object):
def __init__(self, x):
self.x = x
def printX(self):
print self.x
Может быть определен с использованием:
def __init__(self, x):
self.x = x
def printX(self):
print self.x
Test = type('Test', (object,), {'__init__': __init__, 'printX': printX})
Теперь Django модели в основном являются классами, поэтому теоретически это должно быть возможно. Однако у меня есть несколько вопросов:
- Как определить наследование от
models.Model
? - Как определить поле
age
? - Как определить
Meta
и атрибуты внутри него?
Есть ли способ сделать это? Спасибо за любую помощь.