Получение всех объектов в отношении на основе имени отношения в CoreData - PullRequest
0 голосов
/ 29 мая 2011

Скажем, у меня есть объект coreData с именем Business.Business имеет множество отношений ко многим.

Business имеет Phones, Images, Districts, URLs и т.д.do NSSet somePhones = self.Phones?

А что если я захочу создать функцию, учитывая имя отношения, а именно @ "Телефоны" даст мне тот же набор.

Могу ли я вытащить это?

Ответы [ 2 ]

1 голос
/ 29 мая 2011

Определите метод в категории вашего NSManagedObject, который выглядит следующим образом:

- (NSSet *)getManyRelationship:(NSString *)relationshipName{
    // insert sanity checking for relationshipName form
    // needs to be camelcase:
    //     'photos' rather than 'Photos'
    //     'userPhotos' rather than 'UserPhotos' or 'userphotos'
    SEL method = NSSelectorFromString(relationshipName);
    if([workout respondsToSelector:method])
        return objc_msgSend(self, method);
    return nil;
}
1 голос
/ 29 мая 2011

Вы можете получить доступ ко всем именам атрибутов с помощью [Business attributeKeys] и проверьте свойство isTooMany для любого атрибута. Результат будет то, что вам нужно.

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