## page was renamed from NacerAdamouSaidou/Python Quelques idées à propos de python en général et de django en particulier. = Integrer facilement les modifications des modèles dans la bd = * j'utilise python-django-dmigrations qui s'installe avec un simple '''aptitude install python-django-dmigrations'''. Cet outil est vraiment cool, et me fait penser à ''rake migrate'' de ruby. Ca m'évite aussi de taper du sql à la main (méga cool!). voici un bon [[http://code.google.com/p/dmigrations/wiki/DmigrationsTutorial|tuto]] dessus. . regarde aussi (plutôt ?) south http://south.aeracode.org/ -- ThomasNoël <> = Les modèles Django et l'héritage = * petite partie de plaisir avec l'héritage et les modèles django. Un extrait pour s'amuser (c'est un code naif, y a peut être mieux): {{{ class Comptable(models.Model): libelle = models.CharField(max_length=30) desc = models.TextField('description', help_text='description') code = models.IntegerField('code',help_text='code') def __unicode__(self): return "%s - %s" % (str(self.code), self.libelle) class Meta: abstract = True class Groupe(Comptable): parent = models.ForeignKey('self', null=True) class Compte(Comptable): parent = models.ForeignKey(Groupe, null=True) def __unicode__(self): return '%s '% self.libelle }}} Code pour représenter la contrainte: un Compte peut appartenir à un Groupe ou non, et un Groupe peut être sous Groupe d'un autre Groupe ou non. On peut génériciser ce code pour l'adapter à n'importe quelles structures de données ayant des relations de type père - enfant (un arbre). Par exemple, si on veut représenter des organigrammes simples (du genre chaque employé n'a qu'un seul chef) ;-).