gpt4 book ai didi

ios - NSFetchController 和 coredata 中的多对多

转载 作者:行者123 更新时间:2023-11-28 22:15:52 30 4
gpt4 key购买 nike

为了更好地理解我的问题,想象一下你的 facebook 好友;我有一个实体“用户”,我用它来显示 friend 之间的关系;

enter image description here

我不知道如何使用NSFetchRequest获取具体用户的好友

我有两个“对多”关系(见上文),我尝试使用 NSPredicate 结交 friend ,但最后数组是空的。

NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = (NSEntityDescription *)[_dbManager userEntity];
[fetchRequest setEntity:entity];

User *userByUid = [_dbManager userByUid:_currentUid];

NSSortDescriptor *sort = [[NSSortDescriptor alloc]
initWithKey:@"sortId" ascending:YES];
[fetchRequest setSortDescriptors:[NSArray arrayWithObject:sort]];

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"(friends IN %@)", userByUid];

[fetchRequest setPredicate:predicate];

[fetchRequest setFetchBatchSize:10];

NSArray *array = [_fetchedResultsController.managedObjectContext executeFetchRequest:fetchRequest error:nil];

最佳答案

你必须使用反向关系和“ANY”:

[NSPredicate predicateWithFormat:@"ANY beFriendsWith == %@", userByUid]

关于ios - NSFetchController 和 coredata 中的多对多,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21704068/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com