2010-11-29 22 views
7

Je voudrais utiliser la migration légère CoreData autant que possible, mais n'a pas pu trouver dans la documentation, qui sont exactement les cas où cela est possible. La documentation indique: Si vous apportez des modifications simples à votre modèle (par exemple en ajoutant un nouvel attribut à une entité), sur Mac OS X v10.6 et ultérieur et sur iPhone OS, Core Data peut effectuer une migration automatique des données.Migration légère CoreData: quelles sont exactement les "simples modifications apportées à votre modèle" que CoreData peut migrer automatiquement?

Pour base de données pour être en mesure de le faire, les changements doivent correspondre à un modèle de migration évidente, par exemple:
- simple ajout d'un nouvel attribut
- Un attribut non-option devenir option
- attribut facultatif devenir non-option, et la définition d'une valeur par défaut

Eh bien, j'ai essayé d'ajouter aussi une nouvelle entité sortir des relations et supprimer une entité existante (sans relations) et cela a fonctionné pour moi automatiquement aussi bien.

La question est: est-ce que quelqu'un sait exactement quels sont les changements simples qui peuvent être migrés automatiquement?

Répondre

12

De WWDC 2010 Session 118 Mastering Core Data *:

inférables changements pris en charge par la migration légère

  • Ajouter, supprimer, renommer
  • Attributs - conversion de type numérique
  • relations - promouvoir à un à à plusieurs
  • Entités - Modifier l'héritage de l'entité

* La vidéo nécessite Apple Developer login