Cómo filtrar NSDate de una entidad de datos centrales usando NSPredicate

I've got a Core Data Entity with a time stamp (NSDate) and I need to fetch records from the last n days. How could I do that? Thanks.

preguntado el 08 de noviembre de 11 a las 11:11

1 Respuestas

Prueba esta

#define DAY_1 86400 //seconds in one day
NSFetchRequest *request=[[NSFetchRequest alloc] init];
request.entity=[NSEntityDescription entityForName:@"<your entity name>" inManagedObjectContext:<your context>];
request.predicate=[NSPredicate predicateWithFormat:@"timestamp > %@",[NSDate dateWithTimeIntervalSinceNow:-DAY_1*n]];
NSFetchedResultsController *frc=[[NSFetchedResultsController alloc] initWithFetchRequest:request 
                                                                        managedObjectContext:<your context> 
                                                                          sectionNameKeyPath:nil
                                                                                   cacheName:nil];
[request release];

now you can use frc to perform the fetch

respondido 08 nov., 11:15

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.