Я изучаю CoreData с помощью примера приложения для инвентаризации. Моя модель данных имеет 2 объекта: «Владение» и «Тип актива». Владения имеют отношение «к одному» к типам активов, называемым «assetType», а типы активов имеют отношение «ко многим» к владениям, называемым «владениями». Каждое Владение имеет только один Тип Актива, но Типы Актива имеют много Владений.
Я хотел бы отсортировать табличное представление по разделам на основе типов активов. Однако мне нужна помощь в заполнении моей структуры данных.
Вот как я буду моделировать свой контроллер табличного представления
NSArray для разделов таблицы: каждый объект раздела в массиве будет представлять собой NSDictionary с двумя ключами: @"Header" — это тип актива, а @"Possessions" — массив имущества этого типа актива.
Я без проблем справлюсь с построением табличного представления из этой структуры. Я также могу обрабатывать выборку типов активов из CoreData в ключ заголовка моего словаря. Где я в тупике, так это в том, как мне воспользоваться преимуществами отношения «ко многим», которые типы активов имеют к владениям, чтобы я мог получить владения в массиве для словаря.
Как мне получить имущество каждого типа активов в массив?
Нужно ли мне делать запрос на выборку с предикатом, чтобы получить имущество, имеющее соответствующий тип актива, или есть более простой способ? - Кажется, это было бы неэффективно, так как пришлось бы проверять все владения на совпадение!?!?!?!?
Является ли отношение ко многим «владениями» объекта AssetType доступным свойством объекта AssetType? Если да, то как мне получить к нему доступ? Что он возвращает?
Я не ищу бесплатный код, но я готов опубликовать свой, если это необходимо. Мне бы очень хотелось узнать, как лучше всего решить эту проблему, и, возможно, указать на полезную информацию в Интернете для достижения этой цели. Я не совсем новичок, но у меня все еще есть проблемы с пониманием CoreData, и до сих пор документы Apple все еще довольно запутывают меня по этому вопросу. Я признателен за любую предложенную помощь.