我正在尝试使用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详细信息的自定义类?
答案 0 :(得分:0)
不要在关系数据库方面查看核心数据。核心数据是对象图管理器。
您需要创建另一个名为EventNotes
的实体,然后创建一个从Event
到EventNotes
的关系,将其命名为“Notes”或其他内容(将其标记为一对一)。
并且不要忘记创建从EventNotes
到Event
查看此链接以了解核心数据关系 https://developer.apple.com/library/ios/#documentation/Cocoa/Conceptual/CoreData/Articles/cdRelationships.html
Transformable属性对您的要求是一个糟糕的解决方案。看看这个问题的答案。 When *not* to use Core Data type Transformable?