[PYTHON] Procédure pour changer le nom de la table et le nom de la colonne du modèle Django en même temps

Procédure pour changer le nom de la table et le nom de la colonne du modèle Django en même temps

Changer avant

class AAA(models.Model):
    name = models.CharField()
    
    class Meta:
        db_table = 'aaa'

class BBB(models.Model):
    name = models.CharField()
    aaa = models.ForeignKey(AAA)
    

Après le changement

class CCC(models.Model):
    name = models.CharField()

    class Meta:
        db_table = 'ccc'

class FooTwo(models.Model):
    name = models.CharField()
    ccc = models.ForeignKey(CCC)

Procédure de correction

(1). Models.py modifié

class CCC(models.Model): <-Fixé AAA à CCC
    name = models.CharField()

    class Meta:
        db_table = 'ccc' <-Modifier aaa en ccc

class FooTwo(models.Model):
    name = models.CharField()
    aaa = models.ForeignKey(CCC) <- ForeignKey(AAA)La clé étrangère(CCC)Fixé à

(2). Modifiez le fichier de migration ci-dessous après la migration de schemam

    def forwards(self, orm):
        db.rename_table('aaa', 'ccc')

    def backwards(self, orm):
        pass

(3). migrate --AAA-> CCC pour voir si le nom de la table a changé

(4). Modifiez models.py

class CCC(models.Model):
    name = models.CharField()

    class Meta:
        db_table = 'ccc'

class FooTwo(models.Model):
    name = models.CharField()
    ccc = models.ForeignKey(CCC) <-Modifier aaa en ccc

(5). Modifiez le fichier de migration ci-dessous après la migration de schemam

    def forwards(self, orm):
        db.rename_column('ccc', 'aaa', 'ccc')

    def backwards(self, orm):
        pass

(6). migrate --Vérifiez si le nom de la colonne a été changé aaa-> ccc

Recommended Posts

Procédure pour changer le nom de la table et le nom de la colonne du modèle Django en même temps
Parcourir .loc et .iloc en même temps dans pandas DataFrame
Boucle les variables en même temps dans le modèle
Je veux créer un lecteur de musique et enregistrer de la musique en même temps
Assurez-vous que le prétraitement au moment de la création du modèle de prédiction et de la prédiction est aligné
Visualisez les données et saisissez la corrélation en même temps
J'ai essayé d'illustrer le temps et le temps du langage C
[Django] Noms de champs pouvant être utilisés pour le modèle utilisateur, l'enregistrement des utilisateurs et les méthodes de connexion
L'histoire du retour au front pour la première fois en 5 ans et de la refactorisation de Python Django
Comment retourner les données contenues dans le modèle django au format json et les mapper sur le dépliant
Déterminez le format de la date et de l'heure avec Python et convertissez-le en Unixtime
Comment afficher les octets de la même manière en Java et Python
Comment lire des entrées standard ou des fichiers variables en même temps comme la commande coller en Python
Comment obtenir la différence de date et d'heure en secondes avec Python
Ajout d'une fonction pour enregistrer les décalages souhaités dans la table des décalages Django
J'ai implémenté le modèle VGG16 avec Keras et essayé d'identifier CIFAR10
Tracez plusieurs cartes et données en même temps avec matplotlib de Python
[Python] Comment ouvrir deux fichiers ou plus en même temps
9 étapes pour devenir un expert en apprentissage automatique dans les plus brefs délais [Entièrement gratuit]
Comment compter le nombre d'éléments dans Django et sortir dans le modèle
Implémenter la possibilité de réserver ce qui se passe régulièrement dans la liste Django Todo
Convertissez instantanément le modèle en dictionnaire avec Django et initialisez Form à une vitesse explosive
Je suis accro à la différence dans la façon dont Flask et Django reçoivent les données JSON
Introduction à l'analyse des séries temporelles ~ Modèle d'ajustement saisonnier ~ Implémenté en R et Python
Transformez plusieurs listes avec l'instruction for en même temps en Python
12. Enregistrez la première colonne dans col1.txt et la deuxième colonne dans col2.txt
Spécifiez l'URL de la vue dans le modèle Django
Pour représenter la date, l'heure, l'heure et les secondes en Python
Cisco IOS-XE capture les changements dans la table de routage et les messages au service externe
Je voulais juste extraire les données de la date et de l'heure souhaitées avec Django
Mémorandum ((1) Copier et coller à partir d'un autre livre (2) Reportez-vous au tableau de comparaison avec openpyxl)
Pour extraire des données dans une colonne spécifique dans une feuille spécifique dans plusieurs fichiers Excel à la fois et mettre les données dans chaque colonne sur une ligne