Je suis à mi-chemin de l'écriture de ma première application Grails. Cela se passe très bien jusqu'à présent, mais je viens juste de réaliser que lorsque je serai en ligne, je ne serai pas capable de changer autant le modèle de domaine.Grails - Mise à jour du domaine après la mise en ligne - Vais-je perdre mes données?
L'application est soutenue par une base de données MySql, je n'ai actuellement qu'un seul objet d'intérêt 'Personne'. Si, après le déploiement, je souhaite ajouter un domaine 'Groupe', de sorte qu'une personne ait plusieurs groupes, que devrai-je faire en ce qui concerne la base de données? Vais-je perdre des lignes existantes dans la base de données MySQL?
Comment les gens gèrent-ils généralement cette situation? Existe-t-il une manière intelligente de concevoir mes domaines ou un outil simple pour gérer l'ajout de colonnes dans la table MySql?
V1
class Person {
String firstName;
String lastName;
String email;
String phoneNumber;
}
V2
class Person {
static hasMany = [groups:Group]
String firstName;
String lastName;
String email;
String phoneNumber;
}
Cordialement,
Gav
C'est probablement la meilleure solution car il est assez effrayant de permettre à votre schéma d'être mis à jour "automatiquement par magie". –
Avant le déploiement, je suis toujours en guerre pour voir que tout fonctionne bien. Et pendant ce temps, j'utilise l'application MySQL pour comparer la structure de la base de développement avec la base de données de production. Il génère un fichier SQL de migration, mais seules les bases de SQL sont nécessaires pour voir si vous allez perdre des données. –