Автоматическая миграция Core Data не создает новую сущность в моей новой модели

Я сделал новую версию своей основной модели данных, которая включает в себя одну новую сущность «Тест» с одним атрибутом «тип». Облегченная миграция работала без ошибок, но я заметил, что новый объект не был создан в базе данных. При получении этого нового объекта "Test" результат был нулевым. Я установил атрибут «тип» как необязательный со значением по умолчанию 1, потому что я ожидал, что миграция создаст новый объект с этим значением по умолчанию. Но это не так. Итак, мой вопрос: это ожидаемое поведение? В случае переноса основных данных новые объекты не создаются, а устанавливаются равными нулю? Или, если я пропустил некоторые шаги, что произойдет, если новая модель будет иметь отношения между новым объектом «Тест» и существующими объектами? Спасибо.


person Mace    schedule 05.02.2012    source источник


Ответы (1)


Вам необходимо создать объект этой сущности, используя, например, -[NSEntityDescription insertNewObjectForEntityName:...]. Просто наличие объекта в модели не создаст никаких объектов.

Вы можете сделать это в конце миграции или лениво при запуске (если вы делаете выборку для объекта этой сущности и не можете его найти).

person Aderstedt    schedule 21.02.2012