It works:
class MyModel(peewee.Model):
my_field = peewee.IntegerField(null=False, default=0)
class Meta(object):
database = db
db_table = 'MyTable'
This does not work:
class MyModel(peewee.Model):
class Meta(object):
database = db
db_table = 'MyTable'
setattr(MyModel, 'my_field', peewee.IntegerField(null=False, default=0))
I guess this is due to some metaclass magic done in peewee.Model. Indeed, I do not see him in the model _meta.fields.
How could fields be dynamically determined?
source
share