我的Core Data模型中有两个实体:Library和Book。它们通过图书馆和书籍之间的To To关系联系起来
但是,在我的示例中,我在我的库中有两次完全相同的书,当我尝试将它们添加到我的库时,只出现一个。我搜索了一下,注意到在图书馆对象中,书籍存储为NSSet
有谁知道如何将图书存储在NSArray
中呢?
答案 0 :(得分:1)
你不能(好吧,除非你取消Book
实体并使用可转换属性,但这不是一个好的解决方案。)
显而易见的选择是在count
实体上添加Book
属性,以便您可以记录您拥有的这本书的数量。这可能会对您的其他设计产生什么影响,这是您需要考虑的事项。
答案 1 :(得分:1)
在Xcode侧栏中,有一个名为" Ordered relationship"的复选框,但正如Wain所提到的,这不会解决重复的问题。但是,它会将书籍保存在有序集合中(NSOrderedSet
)。
我会创建一个新实体LibraryBook
,它与Book
有一对一的关系,而与Library
有一对一的关系。您可以在一个LibraryBook
中拥有两个Library
,两者都指向同一个Book
。