コードで ManageObjectModel を作成しているときに、2 つのエンティティとその属性を作成しています。しかし、問題は、2 つのエンティティ間に 1 対多の関係を作成する方法です。私のコードは以下です。コードを使用して、2 つの従業員エンティティと組織エンティティの間に 1 対多の関係を作りたいだけです。
- (NSManagedObjectModel *)managedObjectModel
{
if (__managedObjectModel != nil) {
return __managedObjectModel;
}
__managedObjectModel = [[NSManagedObjectModel alloc] init];
NSEntityDescription *employeeEntity = [[NSEntityDescription alloc] init];
[employeeEntity setName:@"Employee"];
[employeeEntity setManagedObjectClassName:@"Employee"];
NSEntityDescription *organizationEntity = [[NSEntityDescription alloc] init];
[organizationEntity setName:@"Organization"];
[organizationEntity setManagedObjectClassName:@"Organization"];
[__managedObjectModel setEntities:[NSArray arrayWithObjects:employeeEntity, organizationEntity, nil]];
NSAttributeDescription *nameAttribute = [[NSAttributeDescription alloc] init];
[nameAttribute setName:@"name"];
[nameAttribute setAttributeType:NSDateAttributeType];
[nameAttribute setOptional:NO];
NSAttributeDescription *idAttribute = [[NSAttributeDescription alloc] init];
[idAttribute setName:@"id"];
[idAttribute setAttributeType:NSInteger32AttributeType];
[idAttribute setOptional:NO];
NSArray *properties = [NSArray arrayWithObjects: nameAttribute, idAttribute, nil];
[employeeEntity setProperties:properties];
NSAttributeDescription *organizationNameAttribute = [[NSAttributeDescription alloc] init];
[organizationNameAttribute setName:@"Name"];
[organizationNameAttribute setAttributeType:NSStringAttributeType];
[organizationNameAttribute setOptional:NO];
properties = [NSArray arrayWithObjects:organizationNameAttribute, nil];
[organizationEntity setProperties:properties];
return __managedObjectModel;
}