我在互联网上搜索了很多,但找不到我要找的东西。
我有这个模型,它可能有很多用户。所以我有一个名为User
. 用户有一个NSSet
记录。我想从给定用户那里获取记录。我正在尝试这样做,但它仍然返回所有用户的记录。
NSManagedObjectContext *context = _backgroundContext;
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Record"
inManagedObjectContext:context];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"(date >= %@)",date];
NSPredicate *predicate1 = [NSPredicate predicateWithFormat:@"User = %@",currentUser];
NSPredicate *predicates = [NSCompoundPredicate andPredicateWithSubpredicates:[NSArray arrayWithObjects:predicate,predicate1, nil]];
[fetchRequest setPredicate:predicates];
[fetchRequest setPredicate:predicate];
[fetchRequest setEntity:entity];
NSError *error = nil;
NSArray *fetchedObjects = [context executeFetchRequest:fetchRequest error:&error];
我知道这应该不难,但我找不到它是什么,我希望你们中的一些人能提供帮助。提前致谢!
编辑:
正如我所说,我有一个实体User
:
NSString name,
int age,
NSSet records, ...
Record
有自己的属性,例如:
NSDate date,
NSString name,
NSString event,
...
我想形成一个获取请求以仅从特定用户那里获取记录。而且我不知道该怎么做,因为我要从每个用户那里获取所有记录。
记录具有多对多关系。我可以获取 currentUser.records 之类的记录,但我无法使用 record.User 获取用户。