Core Data可以用于具有可变模式的对象吗?

时间:2010-03-08 04:56:30

标签: iphone core-data sqlite

我正在实施一个新的iPhone应用程序,对整个Cocoa开发来说相对较新。我正处于选择此应用程序的持久层如何工作的阶段,看起来我基本上在Core Data和sqlite3之间进行选择。

此应用程序中的持久化模型旨在具有在运行时加载的模式(来自某种defn文件,可能是XML)。我的意思是,这个应用程序的目的是在某种程度上具有用户可定义的对象,例如:可以修改客户类型(具有某些内置字段,如“名称”和“电子邮件”),以根据用户的特定需求添加额外字段(例如,用户可能希望向其客户添加“最喜欢的水果”字段类型)。

话虽如此,Core Data是否适用于具有非烘焙数据模型的应用?我刚刚开始在XCode中使用Core Data对象设计器的东西,看起来这个东西想要处理具有已编译的固定字段的对象。

我肯定试图在这里采取阻力最小的路径,我可以看到使用Apple提供的数据框架的好处,但是如果要将我锁定为在编译时定义的数据模型。

1 个答案:

答案 0 :(得分:2)

核心数据数据模型需要在编译时定义,但这并不意味着您不能允许最终用户添加和使用自定义字段。

这只是意味着您要为自定义字段定义实体并将字段创建为对象。

最好设计一个满足您需求的数据模型,而不是考虑如何在SQL中解决问题。