Core Data, NSPredicate, ANY key.path == nil
Wymyśliłem rozwiązanie tego problemu za pomocą podzapytania, ale nie rozumiem, dlaczego to, co próbowałem zrobić, nie zadziałało.
Oto mój model danych. Ściągam poradę.
Mogę wykonać następujące czynności jako predykat:
[NSPredicate predicateWithFormat:@"ANY conditions.terrain == %@", aTerrainObject];
działa dobrze i zwraca każdą radę, w której przynajmniej jeden z warunków ma ten typ terenu.
Jednak gdy próbuję to zrobić, kończy się to niepowodzeniem:
[NSPredicate predicateWithFormat:@"ANY conditions.terrain == nil"];
Chcę zwrócić każdą radę, w której przynajmniej jeden z warunków nie ma zestawu typów terenu.
Jednak działają:
[NSPredicate predicateWithFormat:@"SUBQUERY(conditions, $x, $x.terrain == nil).@count > 0"];
Czy ktoś może wyjaśnić, dlaczego, szukając zero, nie mogę użyćANY
składnia?