Core data CoreData:搜索与另一个entrie相关的条目

Core data CoreData:搜索与另一个entrie相关的条目,core-data,ios7,Core Data,Ios7,由于我不知道如何准确地描述我的问题,我没有找到任何合适的答案。我希望我能正确解释:) 我有三个实体:Player、Event和EventPlayerState。EventPlayerState与播放器和事件以及一些附加属性有一个n-1连接 对于一个函数,我需要连接到事件X的所有EventPlayerState。我有事件X的对象,但我不知道如何使用对象在CoreData中搜索 代码也一样: NSMutableArray *eventplayerstates = [fetched results]

由于我不知道如何准确地描述我的问题,我没有找到任何合适的答案。我希望我能正确解释:)

我有三个实体:Player、Event和EventPlayerState。EventPlayerState与播放器和事件以及一些附加属性有一个n-1连接

对于一个函数,我需要连接到事件X的所有EventPlayerState。我有事件X的对象,但我不知道如何使用对象在CoreData中搜索

代码也一样:

NSMutableArray *eventplayerstates = [fetched results] NSMutableArray
*selectedObjects = [[NSMutableArray alloc] init];

for(int i = 0; i < [eventplayerstates count]; i++) 
{    
   if([eventplayerstates[i].hasEvent objectID] == [event objectID])
   {
      [selectedObject addObject:eventplayerstates[i]];    
   } 
}
NSMutableArray*eventplayerstates=[fetched results]NSMutableArray
*selectedObjects=[[NSMutableArray alloc]init];
对于(int i=0;i<[eventplayerstates count];i++)
{    
如果([eventplayerstates[i].hasEvent objectID]==[event objectID])
{
[selectedObject addObject:eventplayerstates[i]];
} 
}

您可以尝试使用谓词:

NSManagedObjectContext *moc = [self managedObjectContext];
NSEntityDescription *entityDescription = [NSEntityDescription
entityForName:@"EventPlayerState" inManagedObjectContext:moc];

NSFetchRequest *request = [[NSFetchRequest alloc] init];
[request setEntity:entityDescription];
NSPredicate *eventPredicate = [NSPredicate predicateWithFormat: @"ANY events == %@", eventX];
[fetchrequest setPredicate: eventPredicate];

NSError *error;
NSArray *array = [moc executeFetchRequest:request error:&error];
// make sure to test for the error