Базовое отношение данных показано в tableView - PullRequest
0 голосов
/ 01 марта 2011

Я занимаюсь разработкой приложения с табличным представлением, отображающим содержимое таблицы основных данных.Модель данных выглядит примерно так: Entity (имя, код) - >> Перевод (текст, код)

Я извлекаю все объекты, используя обычный NSFetchedResultsController, но затем один раз пора заполнять каждую строку (через просмотр таблицыcellForRowAtIndexPath :) Я должен погрузиться в каждую сущность, чтобы получить 2 перевода на основе кода, введенного пользователем.Я использую NSFetchRequest для этого, но мне было интересно, если это правильно (один запрос на выборку каждый раз, когда я заполняю строку).Инстинктивно я бы извлекал все данные, которые мне нужны, в NSFetchedResultsController, вместо того, чтобы искать каждый перевод каждый раз, когда я заполняю ячейку, но я не могу понять, как.У кого-нибудь есть какой-нибудь совет или, может быть, какие-нибудь интересные ссылки?

1 Ответ

0 голосов
/ 01 марта 2011

Если в каждой ячейке должны отображаться объекты перевода, относящиеся к каждому объекту сущности, то вам нужно только пройти отношение от извлеченного объекта сущности к соответствующим объектам перевода.

После того, как вы выбрали объекты Entity, а затем структурировали таблицу, чтобы отобразить их, затем получите доступ к значениям в переводах для каждой строки ячейки следующим образом:

NSSet *translations=[anEntityObject valueForKey:@"translations"];

... который возвращает набор объектов Translation для объекта Entity, представленного строкой табличного представления.

Как очень общее правило, вы делаете только одну выборку за просмотр таблицы. Табличное представление должно быть настроено для отображения данных, относящихся к одному конкретному объекту.

...