gpt4 book ai didi

swift - 第二次调用 Realm 写入失败

转载 作者:行者123 更新时间:2023-11-30 12:27:58 24 4
gpt4 key购买 nike

我有一个从 api 检索数据的服务,它返回我映射的 json,然后填充到 Realm,最后将其显示到 View 。

我有办法让用户强制刷新数据检索,这意味着我还需要更新我的 Realm 数据。我第一次调用该方法时效果很好。但如果我尝试再次执行此操作,它每次都会因此异常而崩溃。

*** Terminating app due to uncaught exception 'RLMException', reason: 'Can only add, remove, or create objects in a Realm in a write transaction - call beginWriteTransaction on an RLMRealm instance first.'

这就是我的函数的工作原理:

private func writeCollection(someKey: String?) {
let realm = try! Realm()
try! realm.write {
realm.add(someObject[someKey!]!, update: true)
}
}

最佳答案

此错误发生在与最初认为不同的函数内。我拿着一本像这样的字典 [someKey:someObject] 并使用这本字典作为写入的引用。

问题是这超出了尝试范围! Realm .写入

// removed this reference
// var dictionary = [String:SomeObject]()

realm.write {
let someObject = SomeObject()
someObject.id = someKey
realm.add(someObject, update: true)
}

关于swift - 第二次调用 Realm 写入失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43935778/

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