Облегченная миграция
Миграция (облегченная или полноценная) работает только с существующими данными Core Data. Если у вас имеются старые данные, которые нужно загрузить в Core Data, вам придется реализовать загрузку самостоятельно. Как правило, вы читаете старые данные в своем коде, создаете новый экземпляр NSManagedObject для их хранения, заполняете объект и сохраняете его средствами Core Data. Решение некрасивое, но оно работает. Существует пара других методов, подходящих для миграции больших объемов данных или потоковой передаче (например, из сетевого источника).
Придется создать модель преобразования. Это можно сделать в Xcode: выполните команду Design—Mapping Model и выберите модели, между которыми требуется установить соответствие. Выберите исходные сущности и атрибуты, затем результирующие сущности и атрибуты. При необходимости задайте выражения для преобразования данных. За дополнительной информацией о моделях преобразований обращайтесь к документации Apple «Core Data Migration».
Core Data вычисляет хеш-коды сущностей с использованием информации об атрибутах, чтобы проверить возможные изменения модели с момента создания хранилища. Иногда нужно изменить способ хранения информации без изменения модели данных. Допустим, время в приложении всегда хранилось в секундах, а вы решили перейти на миллисекунды. Значение продолжает храниться в целочисленном формате, а модификатор хеш-кода сообщает Core Data о том, что две модели должны считаться разными версиями, и во время выполнения к ним применяется код миграции.
Облегченная автоматическая миграция возможна при наличии обеих версий модели данных.
Автоматическая миграция может изменить базу данных SQLite без загрузки данных.
Миграция данных выполняется на стадии выполнения.
Облегченная миграция может использоваться для добавления переменных, преобразований обязательной переменной в необязательную и необязательной переменной в обязательную с значением по умолчанию, а также для ограниченного переименования.
Какие изменения необходимо внести в пользовательский интерфейс для отображения сведений о поимке?
Информация о поимке преступников должна отображаться в детализированном представлении.
Я тут сделал пару набросков того, как это - может выглядеть.
Представление, предложенное Петром, нуждается в усовершенствовании. И вы со своим опытом программирования для iOS сможете предложить более удачный вариант дизайна. Помогите Петру с разработкой нового варианта интерфейса.
- Дата: 3-01-2015, 14:15