在 RestKit 中混合 NSManagedObjects 和常规对象
Mixing NSManagedObjects and regular Objects in RestKit
我们的后端 API returns 一个我不想存储在本地 CoreData 实例中的对象。但是,此对象包含嵌套对象,我确实想将其存储在数据库中。
我使用两个映射实现了这个:
- A
RKObjectMapping
映射我的常规 non-NSManagedObject A
.
- 我的 NSManagedObject
B
的 RKEntityMapping
映射。
然后我通过将以下内容添加到 A
的映射来连接两者:
mappingA.addPropertyMapping(
RKRelationshipMapping(fromKeyPath: "b",
toKeyPath: "b",
withMapping: B.mapping()
)
)
因为它看起来工作正常,所以我从未质疑过这种方法。但是现在我不太确定 RestKit 是否真的支持这种配置。
那么,你能像上面那样在 RestKit 中混合使用 RKEntityMappings 和 RKObjectMappings 吗?
是的,你可以,很多人已经做了很长时间了。但是,一般来说,两者的代码是分开组织的,因此这种代码的测试效率较低,因此可能更容易出错。任何问题都会很快被注意到并提交给开发团队,但这可能意味着您需要避免某些版本/提交。
我们的后端 API returns 一个我不想存储在本地 CoreData 实例中的对象。但是,此对象包含嵌套对象,我确实想将其存储在数据库中。
我使用两个映射实现了这个:
- A
RKObjectMapping
映射我的常规 non-NSManagedObjectA
. - 我的 NSManagedObject
B
的RKEntityMapping
映射。
然后我通过将以下内容添加到 A
的映射来连接两者:
mappingA.addPropertyMapping(
RKRelationshipMapping(fromKeyPath: "b",
toKeyPath: "b",
withMapping: B.mapping()
)
)
因为它看起来工作正常,所以我从未质疑过这种方法。但是现在我不太确定 RestKit 是否真的支持这种配置。
那么,你能像上面那样在 RestKit 中混合使用 RKEntityMappings 和 RKObjectMappings 吗?
是的,你可以,很多人已经做了很长时间了。但是,一般来说,两者的代码是分开组织的,因此这种代码的测试效率较低,因此可能更容易出错。任何问题都会很快被注意到并提交给开发团队,但这可能意味着您需要避免某些版本/提交。