Tôi muốn nhóm các kết quả của một thực thể NSFetchRequest
. Các thực thể đều chia sẻ cùng một phần tử trừu tượng. Ví dụ:Có thể sắp xếp theo các lớp con trong `NSFetchRequest` mà không thêm thuộc tính bổ sung?
animal
|
|-cat
|
|-dog
Các NSFetchRequest
đã includesSubentities
thiết TRUE
và entity
thiết lập để animal
. Có thể đặt sectionNameKeyPath
của NSFetchedResultsController thành entity.name
nhưng không thể thực hiện tương tự với sortDescriptors
của NSFetchRequest
do thực tế là sortDescriptors
được áp dụng cho các thuộc tính được lưu trữ (tức là dữ liệu trong cơ sở dữ liệu, chứ không phải các phương thức trong lớp). Do đó, cách duy nhất để nhóm theo loại thực thể là thêm một thuộc tính vào lớp cha mà các lớp con có thể sử dụng để xác định chính chúng.
Điều này có vẻ điên rồ vì nó làm suy yếu tính hữu ích của kế thừa. Tôi đã có một cái nhìn trong cơ sở dữ liệu SQLite và loại thực thể được lưu trữ trong cùng một bảng như các thuộc tính để dữ liệu cần thiết đã được đưa ra.
Tóm lại: Có thể sắp xếp theo các lớp con trong một số NSFetchRequest
mà không thêm thuộc tính bổ sung?
Bạn đã bao giờ tìm thấy câu trả lời cho câu hỏi này chưa? – epologee
@epologee. Không, tôi không tìm được giải pháp. Tôi nghĩ điều tốt nhất cần làm là sắp xếp lại 'fetchedResultsController.sections' hoặc không sử dụng' NSFetchedResultsController'. –
Tôi đã sử dụng nhiều phiên bản NSFetchedResultsController, một cho mỗi thực thể: S. Yêu thích câu hỏi nếu có ai đó tìm thấy câu trả lời cho câu hỏi đó. Chúc mừng. – epologee