Je développe une application iPhone avec CoreData. Une de mes entités a une propriété NSDate nommée 'time'. Il stocke les temps à la minute/seconde. Comme mes sections j'aimerais avoir la date à jour. Donc, s'il y a des entrées '2010-06-14 8:00' et '2010-06-14 11:00', j'aimerais qu'elles soient regroupées en '2010-06-14'.iPhone CoreData: Comment regrouper les résultats récupérés par jour?
Actuellement je viens d'utiliser @ « temps » comme mon sectionNameKeyPath:
NSFetchedResultsController *aFetchedResultsController =
[[NSFetchedResultsController alloc]
initWithFetchRequest:fetchRequest
managedObjectContext:managedObjectContext
sectionNameKeyPath:@"time"
cacheName:@"Root"];
Y at-il une astuce pour le groupe au moment de la journée? Ou dois-je utiliser SQL et quelque chose comme "GROUP BY date(time, '%Y-%m-%d')
"?
Je me demandais juste: pourquoi ne pas retourner une chaîne avec 'self.time.components.day'? –
Le getter substitué ne disparaît pas non plus lorsque vous générez de nouveau la sous-classe 'NSManagedObject' pour votre entité? –
@Matt typiquement une méthode comme celle-ci sera dans une catégorie de l'entité, pour éviter ce problème. – brodney