是否可以从 Core Data 创建的 Z_PK 列中获取数字?如果是这样,您是否会像获取在模型中手动创建的属性一样获取此列?
问问题
2885 次
3 回答
6
z_pk 不是您可以像其他任何其他属性一样获取的属性。您可以做的是从managedObjectID
您的实体中提取 z_pk 值
可以使用 获取 managedObjectID [self objectID]
。对于这个例子,我们采用这个:
<x-coredata://03C5C895-3245-4D0F-8B6B-7758582AE16B/<your-Entity>/p5>
最后p5
是z_pk。(对于这个商店,对于这个实体,在这个时候。它可以改变)
不知道你需要 z_pk 做什么,也不知道是什么格式。让我们将其managedObjectID
转换为字符串:
NSString *aString = [[[self objectID] URIRepresentation] absoluteString];
从字符串中提取5
:
NSArray *theComponents = [aString componentsSeparatedByString:@"/p"];
NSInteger theZpk = [[theComponents lastObject] intValue];
现在你有了 z_pkint
并且可以随意处理它。
于 2013-06-22T07:34:06.693 回答
3
您可以使用 sqlite 直接访问 CoreData 创建的列。
但是,您不应依赖 Z_PK 或任何列来保持一致。架构可能会在版本之间更改(并且已经更改)。Apple 在 WWDC 视频中已经说明了这一点。
于 2013-06-20T15:42:03.573 回答
0
请参阅此链接以了解更多信息。据我所知,我们无法从核心数据中获取 Z-PK。但是你可以通过保存像sqlite文件这样的核心数据文件来知道它,你可以通过查询来检查它。
于 2013-06-20T15:40:38.850 回答