Comment ajouter un champ personnalisé de façon dynamique? Je suis en train, mais le champ ne sera pas insérer dans la base de données quand je synchroniser db:Comment dynamique ajouter un champ personnalisé au modèle
#It use as register(MyModel)
def register(model, attr="my_attr"):
if model in registry:
raise AlreadyRegistered(
_('The model %s has already been registered.') % model.__name__)
registry.append(model)
setattr(model, attr, MyField())
MyField().contribute_to_class(model, attr)
#MyField.contribute_to_class
def contribute_to_class(self, cls, name):
super(MyField, self).contribute_to_class(cls, name)
setattr(cls, self.name, self)
cls.add_to_class('%s_manager' % name, MyDescriptor())
signals.post_save.connect(self._save, cls, True)
** Vous pouvez être intéressé par ce guide: ** http://stackoverflow.com/q/7933596/497056 –