特定の属性を持つ NSManagedObject を取得しようとしたときに、非常に奇妙なバグが発生しました。これが私がしたことです:
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"%@ == %@", LEVEL_NAME_KEY, _levelName];
この例では、LEVEL_NAME_KEY = @"levelName"
and_levelName
は関数パラメーターです。そのようにしたかったので、キー名を変更すると、変更するLEVEL_NAME_KEY
だけでヘッダーで変更できます。しかし、それは機能しません (フェッチを実行しても何も返されません)。
ただし、そのように書くと:
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"levelName == %@", _levelName];
すべて正常に動作し、正しい NSManagedObject を取得しました。
誰でもこれについて意見がありますか?それは既知のバグですか、それに対する解決策はありますか?
前もって感謝します!