如何管理具有6个实体和关系的大型ManagedObjectModel?核心数据

时间:2013-08-31 23:41:12

标签: ios objective-c core-data afnetworking uimanageddocument

我想知道如何像这样管理一个大的Core Data ManagedObjectModel,但是每个实体都有更多的属性。 Proyectos(表示项目)和Desarrolladores(表示开发人员)将是表视图。其他实体将只是项目。我想使用singleTon管理fetchedResultController并控制managedObjectContext Model

有谁知道这样的例子吗?大模特还是什么?我发现的只有一个或两个实体。

另一个问题是我将从JSON请求获取所有数据,所以我想知道我是否必须使用NSPersistentStoreCordinator或者我应该使用UIManagedDocument? 这是另一个例子

enter image description here

谢谢。

2 个答案:

答案 0 :(得分:2)

我建议使用sigle shared(Singleton)UIManagedDocument来确保您的应用程序中的所有类都具有相同的UIManagedObjectContext。

如何设置它的示例可以在博客中找到:

http://www.adevelopingstory.com/blog/2012/03/core-data-with-a-single-shared-uimanageddocument.html

您可以使用多个NSFetchedResultsController来使用此共享UIManagedObjectContext(来自共享的UIManagedDocument)。

这是我为iPhone编程的斯坦福课程CS193p所做的示例项目。它使用Core Data和我提议的sigleton。

https://bitbucket.org/jcatalan007/cdspot

答案 1 :(得分:0)

如果您使用CoreData缓存来自JSON的数据,您可能需要查看https://github.com/RestKit/RestKit。它将负责JSON对象和CodeData对象之间的映射 - 可能会为您节省大量代码。

你展示的模型不是很大;书籍和课程中的例子都是故意的,因为它们只是用来教书。真实世界的数据库总是更大。