我以编程方式在我的应用程序中设置核心数据,并且遇到了“问题”(不完全是问题,但想知道是否有人找到了一个好方法周围)。核心数据关系 - 使用多个相似类型建立一个关系
我有一个基类FormElement
(它扩展了NSManagedObject
)。然后我将它扩展为各种表单类型,例如TextFieldFormElement
,TextAreaFormElement
和SwitchFormElement
,全部延伸到FormElement
。我还有一个FileAsset
类(它扩展了NSManagedObject
),用于存储有关文件的信息。 TextFieldFormElement
和TextAreaFormElement
与FileAsset
有多对多的关系,但SwitchFormElement
没有。
我明白,我没有到发送的反比关系对于FileAsset
,或我可以在FileAsset
设置多个属性作为逆每个FormElement
,可以有与FileAsset
(例如FileAsset.textFieldElement
,FileAsset.textAreaElement
等)的关系。
我的问题是:有没有人找到一个很好的可行的解决方案,允许与任何管理对象的某种类型的反向关系?我真正想要做的只是在FileAsset
(例如FileAsset.element
)中拥有一个属性,它将取FormElement
类型的任何对象(以及任何延伸为FormElement
的对象)?
编程也看不出明显的是实现这一点:
TextFieldFormElement>(一到多)> FileAsset
TextAreaFormElement>(一到多)> FileAsset
FileAsset>(单一个)> FormElement
有没有人遇到过这样的问题,并找到了一个很好的解决方案?我想我的另一种选择是确保FormElement
只包含表单元素的所有可能属性,并通过扩展FormElement
来消除。
非常感谢!