繁体   English   中英

核心数据关系

[英]Core-Data Relationships

在我的应用程序中,有N个用户 每个用户可以具有N个类别 每个类别可以有N 本书

我创建了以下实体BookMetadata,用户,类别

BookMetadata实体是来自不同用户的书籍数据的唯一集合。

我该如何在这些实体之间建立关系。

-用户和类别( 一对多用户和书籍(一对多,一个用户可以拥有一本或多本书籍)之间的关系。

之间的关系-类别和书籍。( 一对多 )。

在此处输入图片说明

我对实现这些关系的理解是否正确,我在CoreData中创建关系相对较新。 如果没有解决方案或更好的解决方案 ,请让我知道如何解决

编辑:

考虑这种情况,

User 1 -> Category 1 -> Book1,Book2.
       -> Category 2 -> Book3, Book4.

User 2 -> Category 1 -> Book1,Book2,Book3.
       -> Category 3 -> Book4

在上述情况下。 同一本书(第3本书)针对不同的用户具有不同的类别。 如何处理这种情况?

编辑2:

我将附加一个示例sqlite DB文件@dropbox https://www.dropbox.com/s/nlmdojkk64bkf1b/test.sqlite

按照惯例,实体应命名为单数。 相对于其关系,关系应命名为复数或单数。

根据给定的信息,假定用户创建了类别以将书籍(如播放列表或类似内容)分组。 类别对用户而言是唯一的,并且不会在用户之间共享。 一本书可以包含在许多类别中。

所以这将成为

用户<->>类别

类别<->>书籍

图书<->>类别

关系应具有两个方面。 相反,您可以定义它。 如果一个用户可以有任意数量的类别,而一个类别只能有一个用户。 类别的倒数是一个用户。

在此处输入图片说明

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM