ich ein Array von Jahr/Monat Tupel haben:NSPredicate zurückzukehren Gegenstände mit in Arrays enthalten Eigenschaften
[(2015, 11), (2015, 12), (2016, 1), (2016, 2), (2016, 3), (2016, 4), (2016, 5), (2016, 6), (2016, 7), (2016, 8), (2016, 9)]
In meinem Coredata ManagedObjectModel, ich habe eine MonthlyReport Einheit, die year
und month
Eigenschaften (Int16) hat
Ich versuche einen effizienten Weg zu finden, alle Modelle zu holen, deren Jahr- und Monatseigenschaften mit den Tupeln aus dem Array übereinstimmen.
Ich habe versucht, die folgenden (mit uniqueYears
und uniqueMonths
Arrays von eindeutigen Werten):
let predicateYear = NSPredicate(format: "$name in $NAME_LIST", "year", uniqueYears)
let predicateMonths = NSPredicate(format: "$name in $NAME_LIST", "month", uniqueMonths)
let fetchRequest = NSFetchRequest(entityName: "EntityName")
fetchRequest.predicate = NSCompoundPredicate(andPredicateWithSubpredicates: [predicateYear, predicateMonths])
aber das funktioniert nicht; Die App stürzt mit der Nachricht unimplemented SQL generation for predicate : ($name IN $NAME_LIST)'
Im Moment bin ich fest mit dem Abrufen dann manuell filtern alle Modelle, die weit von effizient ist.
Anregungen oder Hinweise würden
Meinst du 'orPredicateWithSubpredicates'? – pbasdf
Sie sind korrekt, bearbeitet und aktualisiert. –