0

特定の日付以上の to-do を持つ to-do リストのリストを取得しようとしています。

データ モデル: Todolist には多くの Todo があります。

due_atTodo モデルのフィールドは Date オブジェクトです。

これは私が使用しているフェッチ要求であり、クラッシュし続けます。

NSDate *now = [NSDate date];
int daysToAdd = _dueDateSlider.intValue;
NSDate *datePeriod = [now dateByAddingTimeInterval:60*60*24*daysToAdd];

NSFetchRequest *request = [NSFetchRequest fetchRequestWithEntityName:@"Todolist"];
NSPredicate *pred = [NSPredicate predicateWithFormat:@"todos.due_at >= %@", datePeriod];
[request setPredicate:pred];
NSError *error = nil;
NSArray *todolists = [managedObjectContext executeFetchRequest:request error:&error];

私が受け取っているエラーは次のとおりです。

-[__NSArrayI compare:]: unrecognized selector sent to instance 0x1018a4c50
An uncaught exception was raised

他の述語検索は正常に機能するため、なぜこれが起こっているのかわかりません。todos.due_at != nilうまくtodos.content like '%test%'動作します。

4

1 に答える 1

1

特定の日付以上の to-do を含むリストを取得するには、次を使用します

 [NSPredicate predicateWithFormat:@"ANY todos.due_at >= %@", datePeriod];
于 2013-03-23T22:13:35.580 に答える