J'ai besoin de conseils pour pousser les mises à jour de Django, en particulier les mises à jour de la base de données, depuis mon serveur de développement vers mon serveur de production. Je crois que la mise à jour des scripts, des fichiers, et autres sera facile - il suffit de copier les nouveaux fichiers du serveur de dev au serveur de production. Cependant, les mises à jour de la base de données sont ce que je ne sais pas.Pousser les mises à jour de Django vers le serveur de production
Pour Django, j'ai utilisé South
lors de la création de l'application Web initiale pour modifier le schéma de la base de données. Si je devais avoir un temps d'arrêt sur le serveur de production pour les mises à jour, je pourrais copier tous les fichiers sur le serveur de production. Ceux-ci incluraient et changeraient les fichiers models.py
qui décrivent les tables de la base de données. Je pourrais alors effectuer un python manage.py schemamigration my_app --auto
puis un python migrate my_app
pour mettre à jour la base de données en fonction des nouveaux fichiers/models.py
que j'ai copiés.
Est-ce une solution OK ou existe-t-il des moyens plus appropriés pour mettre à jour une base de données du développement aux serveurs de production?
Vos pensées?
Merci
Eh bien, à droite, j'ai omis la deuxième partie de l'opération de migration. J'ai édité ma question pour refléter cette deuxième commande. Ce que j'essaie de savoir, c'est si cette méthode est appropriée pour pousser les modifications de la base de données vers le serveur de production ou si je devrais examiner une autre méthode de mise à jour du schéma d'une base de données. – Garfonzo