首页 > 解决方案 > 需要 CoreData 属性 id

问题描述

我目前正在使用 Swift 和 Core Data 练习,制作带有登录名的应用程序。当我从我的用户实体获取数据时,我收到以下信息:

[<NSManagedObject: 0x7f8f1300c640> (entity: Users; id: 0xd000000000380000 <x-coredata://E67F6A37-4E56-4A55-A01E-940D8BD9EBE9/Users/p14> ; data: {
password = password;
userName = user;})]

有没有办法获得de id 0xd000000000380000?我是使用核心数据的新手,我只使用过 SQL。我知道核心数据不是数据库,但我认为 id 就像主键,不是吗?

我想获得它以使用它来查找实体的对象。

我正在尝试这样的事情:

data.objectID.uriRepresentation().absoluteString

但它只给了我,它不是我想要的。

x-coredata://E67F6A37-4E56-4A55-A01E-940D8BD9EBE9/Users/p14

标签: iosswiftcore-data

解决方案


查看objectID您的 CoreData 实体的属性。

但要记住:

如果接收者尚未保存,则对象 ID 是一个临时值,将在保存对象时更改。

https://developer.apple.com/documentation/coredata/nsmanagedobject/1506848-objectid?changes=_8


推荐阅读