1

我正在尝试使用 Core Data (iOS 6) 为汽车维护日志设计一个数据库。我面临的问题似乎部分是因为 id 内置在模型中(自动生成)。让我解释:

我想创建一个像这样的表:

MAINTENANCE_EVENTS
==================

EventType                    LogDate
-------------------------------------------------
Brake Replacement            01/01/13
Oil Replacement              02/01/13
Oil Replacement              08/07/12

但我想在其他表格中提供有关这些事件的详细信息。例如,更换刹车时应列出刹车制造商,机油应列出机油的品牌,轮胎磨损应记录轮胎是否旋转以及在哪个轮胎上测量胎面等。

如何使用核心数据实体关系模型将这些主条目链接到其他表?

还是仅向 MAINTENANCE_EVENTS 添加可转换属性的最佳解决方案,该属性包含每个 EventType 详细信息的自定义类?

4

1 回答 1

0

不要从关系数据库的角度来看待核心数据。核心数据是一个对象图管理器。

您需要创建另一个名为的实体EventNotes,然后创建关系 From Eventto EventNotes,将其命名为“Notes”或其他名称(将其标记为一对一)。

并且不要忘记从到创建反向EventNotes关系Event

查看此链接以了解核心数据关系 https://developer.apple.com/library/ios/#documentation/Cocoa/Conceptual/CoreData/Articles/cdRelationships.html

可转换属性对您的要求来说是一个糟糕的解决方案。看看这个问题的答案。 什么时候*不*使用核心数据类型可转换?

于 2013-02-25T08:53:43.170 回答