gpt4 book ai didi

swift - 删除一个 NSManagedObject

转载 作者:行者123 更新时间:2023-11-28 16:02:53 25 4
gpt4 key购买 nike

我一直在尝试删除一个 NSManagedObject。这是我的代码:

    let app = UIApplication.shared.delegate as! AppDelegate
let context = app.persistentContainer.viewContext
let request = NSFetchRequest<NSFetchRequestResult>(entityName: "MyEnt")
request.predicate = NSPredicate(format: "SELF = %@", EnttoDelete.objectID)
request.returnsObjectsAsFaults = false

do {
let results = try context.fetch(request)

if results.count > 0 {

for result in results as! [NSManagedObject] {
print ("Ent found")
context.delete(result)

do {
try context.save()
} catch {
print("failed to delete")
}

}

}


} catch {

print ("Error in do")
}
}

您是否看到我删除了实体 (EnttoDelete) 及其 ID (EnttoDelete.objectID)。现在我什至在 stackoverflow 中研究过,我认为这应该可行。但事实并非如此。如何删除所需的实体?

最佳答案

我想我对此进行了排序,做了不同的事情:

    let app = UIApplication.shared.delegate as! AppDelegate
let context = app.persistentContainer.viewContext
var thisID: NSManagedObjectID = (thatLand?.objectID)!
let object = context.object(with: thisID)
context.delete(object)

do {
try context.save()
} catch {
print("failed to delete")
}

我认为这是更好的解决方案。虽然不确定!

关于swift - 删除一个 NSManagedObject,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40742358/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com