gpt4 book ai didi

swift - Swift 中的核心数据属性重置

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

在我的应用程序中,我设置了一个名为“Finances”的核心数据实体。目前它有两个属性:金钱和净 Assets 。

我希望编写一个函数,每次调用它时,都会删除特定实体的所有结果。一个例子可能是:

    func resetAttribute(attribute: String) {

}

PS:我在互联网上发现了一个函数,该函数被设计为仅删除与字符串匹配的属性的特定元素。我按以下方式修改了代码:

func resetTest() {
if let dataAppDelegatde = UIApplication.shared.delegate as? AppDelegate {

let mngdCntxt = dataAppDelegatde.persistentContainer.viewContext
let fetchRequest = NSFetchRequest<NSFetchRequestResult>(entityName: "ApplicationFinances")
let predicate = NSPredicate(format: "money != %@", "vdavduabsdpansuryiubj")

fetchRequest.predicate = predicate

do {
let result = try mngdCntxt.fetch(fetchRequest)

print(result.count)

if result.count > 0 {
for object in result {
print(object)
mngdCntxt.delete(object as! NSManagedObject)
}
}
} catch{

}
}
}

这意味着如果钱不等于 vdavduabsdpansuryiubj (当然意味着永远不会),它就会删除其他值。但这似乎不起作用。

最佳答案

运行该函数时会发生什么?它会抛出错误吗?或者它打印得很好并且运行得很好,但是当您重新加载核心数据时实际上没有任何反应?如果是这种情况,请尝试添加:

do {
try mngdCntxt.save()
} catch {}

for循环结束后

关于swift - Swift 中的核心数据属性重置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48104371/

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