Взаимоотношения между собой моделируются как ссылки на объекты по данным ядра. Таким образом, отношение к одному из Entity Bar
для лица Baz
(при условии, Baz
реализуется классом Baz
) будет
@interface Bar : NSManagedObject {
}
@property (readwrite,nonatomic) Baz * toBaz;
@end
ко-многим моделируются как изменяемый установить свойство (хотя не как NSMutableSet
). Предполагая, что отношение ко многим из Bar
в Baz
под названием manyBazz
:
@interface Bar : NSManagedObject {
}
@property (retain) NSSet* manyBazz;
@end
// coalesce these into one @interface AnalysisRecord (CoreDataGeneratedAccessors) section
@interface Bar (CoreDataGeneratedAccessors)
- (void)addManyBazzObject:(Baz *)value;
- (void)removeManyBazzObject:(Baz *)value;
- (void)addManyBazz:(NSSet *)value;
- (void)removeManyBazz:(NSSet *)value;
@end
Если вы хотите использовать интерфейс NSMutableSet манипулировать manyBazz
отношений, вы должны вызвать -mutableSetValueForKey:@"manyBazz"
, чтобы получить КВО-совместимый прокси-сервер для manyBazz
отношений.
На Leopard (OS X 10.5), а затем все соответствующие методы автоматически генерируются во время выполнения базой данных Core, даже если вы явно не объявляете или не реализуете их (вы, конечно же, получите компилятор если вы пытаетесь использовать их, не объявляя их в файле заголовка). Таким образом, вы не необходимости подкласс
Самый простой способ получить декларации и реализации права является выбор атрибутов в моделер данных и выберите «Копировать Objective-C Метод 2,0 Declarations в буфер» из «Дизайн- > Data Model ", вставьте в свой исполняемый файл .h-файла. Разумеется, вам нужно сохранить свою синхронизацию .h и модели ... следовательно, сердечная рекомендация для рендекса rentzsch MO Generator - инструмента, который автоматически генерирует (и воссоздает) подклассы NSManagedObject из вашей модели данных.
Кроме того, посмотрите [это сообщение в блоге] (http://nvie.com/archives/263 «Автоматическое создание классов для вашей модели данных основных данных») для чрезвычайно простого ** автоматического ** создания классов , – nvie