objective-c - NSManagedObject 的 NSNumber 属性的 NSPredicate

标签 objective-c core-data ios6 nspredicate

我有 NSManagedObjectNSNumber * year 属性,它在数据模型中的类型是 Integer 16

我尝试与 NSPredicate 核实今年的情况,但找不到合适的。

我尝试过的:

NSPredicate *p = nil;
NSNumberFormatter *nf = [[NSNumberFormatter alloc] init];
NSNumber *yearNo = [nf numberFromString:term];
if (yearNo) {
    p = [NSPredicate predicateWithFormat:@"(cars.year == %i)", yearNo.intValue];
}

我也试过:

NSPredicate *p = nil;
NSNumberFormatter *nf = [[NSNumberFormatter alloc] init];
NSNumber *yearNo = [nf numberFromString:term];
if (yearNo) {
    p = [NSPredicate predicateWithFormat:@"(cars.year == %@)", yearNo];
}

在这两种情况下,应用都会崩溃。

最佳答案

如果您提供模型的更多详细信息,我们可以为您提供帮助。

但我认为问题出在汽车上。如果 cars 是 to-many 你需要一个修饰符

[NSPredicate predicateWithFormat:@"ANY cars.year == %@", yearNo];

关于objective-c - NSManagedObject 的 NSNumber 属性的 NSPredicate,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14243057/

相关文章:

objective-c - 将应用程序提交到Apple商店 “Unable to find info.plist”

ios - 将 Int16 类型的整数保存到 Core Data - Swift

ios - 我应该在播放列表实体中使用什么删除规则?

ios - 如何在不插入模型对象的情况下使用它?

objective-c - 在 iOS6 中关闭呈现的 UINavigationController

ios - 如果我有一个 UITableViewController 类,我应该在哪里初始化它的实例变量?

ios - UITableView & Controller 给我空 TableView

objective-c - NSSpeechSynthesizer 中可能存在错误?

ios - 不可重现的 webcore 崩溃

ios - libc++ 是什么时候在 iOS 中引入的?