2012-06-13 3 views
0

Я получил источник от приложения от парня, чтобы внести несколько изменений в приложение. Версия модели данных была, скажем, App3. В этом процессе мне пришлось добавить еще 3-4 версии модели данных. Так что активная версия модели, когда я его отправил, был App7Перенос данных ядра Core iOS на другую машину

Я построил проект (он работал правильно на моем mac) Я отправил ему почтовый индекс, и когда он побежал, он получил сообщение об ошибке «Не могу найти модель для source store " Я попросил его создать последнюю модель данных на основе модели App3 и сделать ее такой же, как App7, и установить ее как текущую версию.

У него все еще есть ошибка, и я не могу понять, почему? Выпускаете ли версию промежуточной модели данных проблемы? Требуется ли удалить файл sqlite в папке симулятора приложения -> iphone? Я нахожусь на месте с этим. Пожалуйста помоги!

ответ

0

Вам необходимо иметь оба файла модели и иметь какое-то управление версиями на месте. Новая модель, которую вы создали, больше не будет работать с его файлом данных, если вы не укажете Core Data, что вы хотите обновить данные.

Управление версиями не так просто, но если ваши изменения достаточно малы, вы можете уйти с автоматическим управлением версиями. Прочитайте руководство и посмотреть:

http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/CoreDataVersioning/Articles/Introduction.html

+0

Сохраняемые данные здесь не нужны. Приложение должно просто создавать и запускать. Проблема заключается в обновлении модели. Если он удалит файл данных на своем Mac, он решит? –

+0

@AyushChaudhary хорошо, считая, что его данные для него не важны. –

+0

Не очень важно. Кроме того, изменение модели данных больше похоже на полный капитальный ремонт. Добавлено много атрибутов. Он будет синхронизироваться с веб-сервером. Поэтому, учитывая эти два момента, я считаю, что удаление sqlite (своего рода новая установка) - лучший вариант. Что сказать? –

0

В моем понимании, это будет. Но на самом деле это не то, что нужно делать, если в конечном итоге версия будет происходить и с существующими живыми приложениями.

+0

Извините, я вас не понял. Вы хотели удалить файл sqlite? –

+0

Да, удаление хранилища данных SQLite должно устранить ошибку. Но все существующие данные будут потеряны, поэтому сначала удалите резервные копии перед удалением. – OutOnAWeekend

+0

Он действительно решил. Хотя сохранение данных в этом случае не требуется, но у меня есть 2 вопроса: –

0

Для облегчения перехода на работу вам необходимо отправить ему все промежуточные версии модели, так как миграция происходит поэтапно через все версии.

И вы должны убедиться, что вы не внесли никаких изменений (даже случайно) в базовую версию App3.

Смежные вопросы