managedObjectID 抛出 "Unresolved Identifier" 错误
managedObjectID throwing "Unresolved Identifier" Error
我正在尝试从 CoreData 存储中获取特定项目,以便我可以编辑键的特定值。编辑发生在与选择要编辑的实体不同的 ViewController 中。
我在原始视图控制器中 prepare(for segue:)
使用 objectID 的 uriRepresenation()
方法将所选实体的 objectID 作为 URL 传递。这样做是因为我不知道如何将 objectID 存储为 NSManagedObjectID
(我得到类型不匹配的错误)
现在我有 URL 在两个视图控制器之间传递,desitantion 视图控制器具有以下代码:
override func viewDidLoad() {
toggleDatePicker()
self.tableView.tableFooterView = UIView()
let editableObjectID = managedObjectID(forURIRepresentation: editableObjectURL!)
let editableEntity = context.object(with: editableObjectID!)
}
还有一行:
let editableObjectID = managedObjectID(forURIRepresentation: editableObjectURL!)
抛出 "Use of unresolved identifier "managedObjectID""
我已经 运行 在这里撞墙了,似乎无法弄清楚这一点。 The API documentation 建议这应该可以执行,但它引用的方法似乎不存在。
欢迎提出任何建议。
managedObjectID(forURIRepresentation:)
是 persistentStoreCoordinator 上的一个方法。您可以从 managedObjectContext (属性 persistentStoreCoordinator
)
中获取商店协调器
let editableObjectID = context.persistentStoreCoordinator.managedObjectID(forURIRepresentation: editableObjectURL!)
我正在尝试从 CoreData 存储中获取特定项目,以便我可以编辑键的特定值。编辑发生在与选择要编辑的实体不同的 ViewController 中。
我在原始视图控制器中 prepare(for segue:)
使用 objectID 的 uriRepresenation()
方法将所选实体的 objectID 作为 URL 传递。这样做是因为我不知道如何将 objectID 存储为 NSManagedObjectID
(我得到类型不匹配的错误)
现在我有 URL 在两个视图控制器之间传递,desitantion 视图控制器具有以下代码:
override func viewDidLoad() {
toggleDatePicker()
self.tableView.tableFooterView = UIView()
let editableObjectID = managedObjectID(forURIRepresentation: editableObjectURL!)
let editableEntity = context.object(with: editableObjectID!)
}
还有一行:
let editableObjectID = managedObjectID(forURIRepresentation: editableObjectURL!)
抛出 "Use of unresolved identifier "managedObjectID""
我已经 运行 在这里撞墙了,似乎无法弄清楚这一点。 The API documentation 建议这应该可以执行,但它引用的方法似乎不存在。
欢迎提出任何建议。
managedObjectID(forURIRepresentation:)
是 persistentStoreCoordinator 上的一个方法。您可以从 managedObjectContext (属性 persistentStoreCoordinator
)
let editableObjectID = context.persistentStoreCoordinator.managedObjectID(forURIRepresentation: editableObjectURL!)