我对您在Core Data中创建关系的方式有疑问。
我将用一个例子来解释:
假设我有3个实体。电机,泵和警告。
电机和泵可以发出警告。
警告实体将存储电机和泵的所有警告。
所以问题是......是否真的有必要在警告电机和泵中建立这么多关系?当我想添加另一个可以发送警告的实体时,我需要另一种关系。
这不是一个糟糕的设计吗?
希望我能理解。
感谢。
答案 0 :(得分:2)
这是标准和良好做法。核心数据需要所有内容的反向关系来维护其对象图。 (嗯,从技术上讲,你不必添加它们,但是你必须自己做额外的工作)。
所以不要担心,经常使用的实体对它们有很多反向关系是正常的。
答案 1 :(得分:2)
是的,这很正常。更好,更结构化的方法是为Motor和Pump建立一个基础实体,让我们称之为Component。此Component实体与Warnings具有关系,警告实体与Component具有反向关系。
然后将Motor和Pump设置为Component实体的后代,一切都很好。组件和警告之间的单一关系/反向关系。