2010-08-13 10 views
2

Y a-t-il un ORM python (mappeur relationnel d'objet) qui dispose d'un outil pour créer automatiquement des classes Python (comme du code pour les développer)?Python ORM qui crée automatiquement des classes à partir du schéma DB

Je suis fréquemment confronté à de petites tâches impliquant différentes bases de données (comme l'importation/exportation de diverses sources, etc.) et je pensais que python avec l'outil susmentionné serait parfait pour cela.

Il devrait fonctionner comme ADO.NET/Linq de Visual Studios pour SQL Designer, où je peux supprimer des tables DB et VS crée des classes pour moi ...

Merci à l'avance.

Répondre

3

Vous n'avez pas besoin de produire une représentation de code source de vos classes pour être en mesure de les développer.

Le seul truc est que vous avez besoin de l'ORM pour générer les classes AVANT d'importer le module qui définit les classes dérivées.

Encore mieux, n'utilisez pas la dérivation, mais utilisez __getattr__ et __setattr__ pour implémenter la délégation transparente aux classes ORM.

+0

Merci pour l'idée que j'aime beaucoup. Quel ORM suggéreriez-vous pour cette approche? Les ORMs que j'ai étudiés me demandent de définir des classes de mapping à la main (pour autant que je comprenne au moins ...) – MartinStettner

+0

Je ne connais que SQLAlchemy, qui possède une fonction d'introspection de base de données , mais il ne semble pas être facilement utilisable dans votre cas. – ddaa