Основные данные моделирования отношений - PullRequest
2 голосов
/ 01 марта 2011

Я моделирую свое приложение в Core Data. У меня есть объект под названием «stats», который будет иметь «player», «team» и «game», связанные с каждым объектом. После того, как эти объекты статистики будут сохранены, я представляю запрос к ним по одному или нескольким из этих атрибутов (игрок, команда, игра). См. Модель ниже.

Core Data Model

Вопрос 1. Имеет ли смысл моделировать их как «отношения», а не как «атрибуты».

Вопрос 2. При получении я хотел бы сформировать свои NSP-предикаты, используя объекты, и мне не нужно отслеживать уникальные имена идентификаторов для каждого игрока, команды или игры. Если я храню объекты игрока, команды и игры (в отличие от уникальных идентификаторов или имен) с каждой сущностью, каков наилучший способ их получения. Будет ли работать следующее, если я хочу получить все объекты статистики для определенной «команды» (someTeamObject) или мне нужно выполнить запрос по ObjectID?

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"team == %@", someTeamObject];

Спасибо

1 Ответ

4 голосов
/ 01 марта 2011
  1. Если я правильно понимаю ваш вопрос, да, имеет смысл смоделировать их как отдельные объекты с отношениями между ними.Это особенно поможет при извлечении различных предметов;вы можете, например, получить одного игрока, связанного с данным статом, или получить все статистические данные для игры.Это приводит к вашему второму вопросу:

  2. Вместо использования предиката, обратите внимание, что ваши отношения имеют имена;вместо создания полного NSFetchRequest со связанным NSPredicate, вы можете просто вызвать соответствующий метод доступа.Для запроса на получение всех объектов Stat для команды вы просто вызываете [team stats] и получаете NSArray of Stat объектов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...