ios - 无法写入我预捆绑的 Realm 文件

标签 ios swift realm

Cannot convert value of type '() -> ()' to expected argument type 'Data?

这就是我得到的这一行:try realm.writeCopy(toFile: url) {

我不知道如何写入打开的预捆绑数据库

        for question in questionBank! {
            do{
                let url = URL(fileURLWithPath: Bundle.main.path(forResource: "questions", ofType: "realm")!)
                try realm.writeCopy(toFile: url) {
                    question.answered = false
                    print(question.answered)
                }
            } catch {
                print("ERROR ZEROING QUESTIONS")
            }
        }

最佳答案

writeCopy(toFile:) 不能替代使用 write。它实际上复制了您现有的 .realm 文件并将其复制到作为输入参数提供的 URL。

如果您想修改.realm 文件并创建.realm 的副本,您需要调用常规write 事务 < strong>在修改它之前,如果你想存储多个版本。

但是,如果您正在修改捆绑文件,您很快就会遇到麻烦,因为这会破坏应用程序的代码签名。如果您想使用应用程序 Bundle 中预填充的 .realm 文件,首先将其复制到 realm 使用的默认位置,然后您只需写入默认 realm 即可。如果您不知道如何将预填充的 Realm 文件复制到默认位置,请查看 this我的答案。

关于ios - 无法写入我预捆绑的 Realm 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50748010/

相关文章:

ios - 将 SwiftUI 按钮绑定(bind)到 AnySubscriber,例如 RxCocoa 的按钮点击

swift - 在 View Controller 之间传递数据

ios - 检测屏幕上的物体

ios - 如何执行 Realm 计数查询

java - Realm :使用 beginGroup() 和 endGroup() 进行查询时出现语法错误

ios - 在 iOS 中检查我的应用程序的电池消耗

iphone - 在 Storyboard 中使用自定义 Push Segue

iOS 属性文本删除/n 换行符

excel - 将数据写入 NSPasteboard 并粘贴到按列和行拆分的 Excel 中

swift - 如何为测试伪造 Realm 结果