2017-08-08 1 views
0

NSPredicateを使用してレルムオブジェクトをフェッチしようとしています。レルムオブジェクトは動作しません

これは

RLMResults *activtyResults = [[[self getActivitySource]activities] objectsWhere:@"ID ==[c] '%@'",activityID]; 

activtyResultsを動作しませんが、これは動作します

nilである:

for (RealmActivity *activity in [[self getActivitySource]activities]){ 
     if ([activity.ID isEqualToString:activityID]) { 
      return activity; 
     } 
    } 

のActivityIDはUUIDです:f20f6217-9cb6-4fe1-9333-8956d1252112

述語形式@"ID ==[c] '%@'"がここでは機能しないのはなぜですか? IDとなるプロパティ名とは何か?

答えて

0

述語がID == %@の場合、共有する命令コードと同等です。

nilを静かに返すのではなく、エラーを生成するために使用した述語は、余分な一重引用符が含まれているためです。 nilと組み合わせたエラーがないと、-objectsWhere:を呼び出すオブジェクトがnilである可能性があります。

関連する問題