Supongamos que tengo una entidad principal, cada una de las cuales tiene un número de hijos. Quiero ordenar a todos los padres por su número de hijos. Algo similar a lo siguiente pseudo código:Datos principales: Clasificación de NSFetchRequest por recuento de la relación de muchos
NSEntityDescription * entity = [NSEntityDescription entityForName:@"Parent" inManagedObjectContext:managedObjectContext];
[[NSSortDescriptor alloc] initWithKey:@"children.count" ascending:NO];
//Execute request
¿Hay una manera de construir una zona de alcance como esto utilizando datos básicos? Si no hay forma de hacerlo, ¿se sortearán usando sortedArrayUsingSelector:
y se perderán los beneficios del tamaño del lote _PFBatchFaultingArray?
Gracias, Ben
El KVC '@ count' se realizaría en el' NSSet' no en los objetos dentro de ese 'NSSet' y, por lo tanto, no provocaría el disparo de los fallos. –
Hace que se active la falla, ya que Core Data no falla cada objeto individualmente - falla el conjunto mismo (o más bien, una subclase concreta de NSSet). Consulte http://developer.apple.com/iphone/library/documentation/Cocoa/Conceptual/CoreData/Articles/cdFaultingUniquing.html#//apple_ref/doc/uid/TP30001202, en "Faulting Limits the Size of the Object Graph". . – Tim
¿Han cambiado las cosas desde entonces? iOS 7 arroja una excepción para este tipo de clasificación: *** Aplicación de finalización debido a la excepción no detectada 'NSInvalidArgumentException', razón: 'no se permite ninguna clave aquí' *** Pila de la primera llamada: – an0