7

NSNumber * yearプロパティがあります。NSManagedObjectデータ モデルのタイプは です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];
}

どちらの場合もアプリがクラッシュします。

4

2 に答える 2

12

モデルの詳細を提供していただければ、お手伝いできます。

しかし、問題は によるものだと思いますcarscars多すぎる場合、これには修飾子が必要です

[NSPredicate predicateWithFormat:@"ANY cars.year == %@", yearNo];
于 2013-01-09T17:51:58.920 に答える
8

@flexaddicted が既に述べたように、フェッチ要求が行われたエンティティなど、十分な情報を提供していません。

Car特定の でオブジェクトをフェッチしたい場合year、述語はただ

[NSPredicate predicateWithFormat:@"year == %@", yearNo]
于 2013-01-09T18:01:06.513 に答える