gpt4 book ai didi

ios - 如何使用 RealmSwift 存储字典?

转载 作者:IT王子 更新时间:2023-10-29 05:10:40 28 4
gpt4 key购买 nike

考虑以下模型:

class Person: Object {
dynamic var name = ""
let hobbies = Dictionary<String, String>()
}

我正在尝试在 Realm 中储存一个 [String:String] 类型的对象我从 Alamofire 请求中得到但不能因为 hobbies 必须通过let定义根据 RealmSwift 文档,因为它是 List<T>/Dictionary<T,U>种类型。

let hobbiesToStore: [String:String]
// populate hobbiestoStore
let person = Person()
person.hobbies = hobbiesToStore

我还尝试重新定义 init()但总是以 fatal error 或其他方式结束。

如何在 RealSwift 中简单地复制或初始化字典?我在这里遗漏了一些微不足道的东西吗?

最佳答案

Dictionary 在 Realm 中不支持作为属性类型。您需要引入一个新类,其对象分别描述一个键值对和一对多关系,如下所示:

class Person: Object {
dynamic var name = ""
let hobbies = List<Hobby>()
}

class Hobby: Object {
dynamic var name = ""
dynamic var descriptionText = ""
}

对于反序列化,您需要将 JSON 中的字典结构映射到 Hobby 对象,并将键和值分配给适当的属性。

关于ios - 如何使用 RealmSwift 存储字典?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33796143/

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