我是Swift的新手,并且想知道是否有人可以给我一些关于如何在Core Data NSSet中存储数据的提示,这些提示按顺序排列为一对多关系的项目。我有一个书类(很多),我有一个书架类(一个),里面有一套NSSet书。
class Shelf: NSManagedObject {
@NSManaged var books: NSSet
}
class Book: NSManagedObject {
@NSManaged var title: String
}
我可以将书籍添加到书架上并且有效,但每次我尝试访问它们而不是我添加它们的顺序时,顺序似乎是随机的。我希望结果按照我添加的顺序保留。有没有办法这样做而不添加像bookOnShelf这样的另一个类来存储位置?
var booksInOrder = myShelf.books.AsAnyObject as [Book]
for(var i = 0; i < mySlelf.books.count; i++)
{
output(booksInOrder[i])
}
答案 0 :(得分:4)
更新您的CoreData模型以启用&#34; Ordered&#34;关系的属性。
您还希望将代码中的属性声明更改为:
@NSManaged var books: NSOrderedSet