La sérialisation vs les commandes sql

En cas de mise à jour des models

a marqué ce sujet comme résolu.

Bonjour ! Je m'occupe d'un petit site développé avec Python/Django; je suis régulièrement amené à modifier mes models. Seulement je suis embêté au moment de mettre à jour, les tables de la BDD ne correspondent plus à mes models. J'ai résolu ce problème en sérialisant mes données au format JSON avant la mise à jour, puis en désérialisant (on dit comme ça ? :p ) après la mise à jour. L'inconvénient de cette méthode est que cela m'oblige à maintenir des méthodes dédiées pour chaque model. De plus je ne trouve pas cette méthode très élégante.
Ma question est la suivante : est-il possible de faire générer les commandes SQL adéquates à Django lors des mise à jour, et si non, serait-il préférable que je créer un fichier de commande moi même plutôt que de recourir à la sérialisation ?

Merci d'avance pour votre aide :)

Pourquoi n'utilises-tu pas les migrations? Si oui, il est effectivement possible d'intercaler une requête sql entre les ajouts aux modèles et les suppressions de colonnes/tables au niveau de la fonction forwards dans ton fichier de migration. l'objet orm le permet.

En effet south gère très bien les migrations et est disponible dans la version 1.6.

South te permet de générer des fichiers de migration dans les deux sens (upgrade et rollback), ce qui te permet, lorsque tu veux revenir à un état antérieur de le faire sans souci.

South a été intégré dans la version 1.7 de django, et donc le jour ou ton hébergeur migrera tu n'auras pas trop de souci non plus

South a été intégré dans la version 1.7 de django, et donc le jour ou ton hébergeur migrera tu n'auras pas trop de souci non plus

Ce n'est pas tout à fait south qui a été intégré : il faut régénérer les fichiers de migrations lors de la transition, et donc les anciennes migrations sont perdues.

+0 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte