Tôi đang phát triển một Ứng dụng iPhone với CoreData. Một trong các thực thể của tôi có thuộc tính NSDate có tên là 'thời gian'. Nó lưu trữ thời gian đến phút/giây. Như phần của tôi, tôi muốn có ngày đến ngày. Vì vậy, nếu có mục '2010-06-14 8:00' và '2010-06-14 11:00', tôi muốn chúng được nhóm thành '2010-06-14'.iPhone CoreData: Cách nhóm các kết quả được tìm nạp theo ngày?
Hiện nay tôi chỉ cần sử dụng @ "thời gian" như sectionNameKeyPath tôi:
NSFetchedResultsController *aFetchedResultsController =
[[NSFetchedResultsController alloc]
initWithFetchRequest:fetchRequest
managedObjectContext:managedObjectContext
sectionNameKeyPath:@"time"
cacheName:@"Root"];
Có một thủ thuật để nhóm theo thời gian cho đến ngày? Hoặc tôi có phải sử dụng SQL thuần túy và một cái gì đó như "GROUP BY date(time, '%Y-%m-%d')
"?
Chỉ cần tự hỏi: tại sao không trả lại chuỗi bằng 'self.time.components.day'? –
Ngoài ra không có getter ghi đè biến mất khi bạn tạo lại lớp con 'NSManagedObject' cho thực thể của bạn? –
@Matt thường là một phương pháp như thế này sẽ được trong một thể loại của thực thể, để tránh vấn đề đó. – brodney