gpt4 book ai didi

objective-c - 按属性 IN 数组过滤核心数据结果

转载 作者:IT王子 更新时间:2023-10-29 07:56:58 26 4
gpt4 key购买 nike

我目前让 Core Data 成功返回了名为 Event 的特定实体的所有结果:

NSManagedObjectContext *context = [delegate managedObjectContext];
NSEntityDescription *entityDescription = [NSEntityDescription entityForName:@"Event"
inManagedObjectContext:context];
NSFetchRequest *request = [[NSFetchRequest alloc] init];
[request setEntity:entityDescription];

NSError *error;
NSArray *fetchResults = [context executeFetchRequest:request error:&error];

事件实体的一个属性是标题为 tid 的字符串。我还有一个包含所有允许的 tid 值的数组 filterArray

如何让我的 Core Data 请求仅返回具有与 filterArray 中的值之一匹配的 tid 属性的事件?我相信答案与 NSPredicate 有关,但我对它还不够熟悉,无法让它屈服于我的意志。

最佳答案

试试这个:

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"tid IN %@", filterArray];

[request setPredicate:predicate];

看看 Aggregate OperationsPredicate Programming Guide .

编辑

看看NSPredicate iPhone 3.2 SDK Core Data “IN clause” NSInvalidArgumentException exception .这是你有同样的错误。问题是列/属性名称中的拼写错误。语法应该没问题,它不能只找到tid

关于objective-c - 按属性 IN 数组过滤核心数据结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6130900/

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