OStack程序员社区-中国程序员成长平台

标题: ios - RestKit 内存核心数据存储的配置 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-12 11:48
标题: ios - RestKit 内存核心数据存储的配置

我需要将我的 Core Data 持久存储(由 RestKit 管理)拆分为两部分。一部分应该只保留在内存中而不是保存到磁盘,另一部分应该保存。通常它是通过向 Core Data 对象模型添加配置并为每个配置创建两个存储来完成的。但是RestKit的RKManagedObjectStore方法——(NSPersistentStore )addInMemoryPersistentStoreNSError *)error;不采用配置名称并使用配置 nil 添加持久存储:

- (NSPersistentStore *)addInMemoryPersistentStoreNSError **)error
{
    if (! self.persistentStoreCoordinator) [self createPersistentStoreCoordinator];

    return [self.persistentStoreCoordinator addPersistentStoreWithType:NSInMemoryStoreType configuration:nil URL:nil options:nil error:error];
}

根据 Core Data 文档,这可以防止在持久存储协调器中使用任何配置。 我可以重新加载此方法并使其使用配置,但首先我想问: 我有什么理由不这样做吗? addInMemoryPersistentStore 看起来像这样肯定是有原因的。可能有人尝试过与我将要做的相同的事情,但发现它不起作用?



Best Answer-推荐答案


我想说您应该创建自己的方法版本,该版本采用配置参数。我不认为您缺少任何东西,我只是认为如果 RestKit 要提供对 100% 开箱即用的核心数据配置 API 的支持,那么将会有很多代码需要维护,而很少有人会从所有额外的努力中受益。

您最好的选择是子类化并添加您想要的方法,根据需要调用 super,然后实例化该子类并在配置核心数据堆栈(托管对象存储)时传递它。

关于ios - RestKit 内存核心数据存储的配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25747324/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4