【问题标题】:Realm - Object mapping and persist AnyObject type领域 - 对象映射和持久 AnyObject 类型
【发布时间】:2016-07-18 11:36:14
【问题描述】:

我正在构建一个两个架构相同的应用程序(DB 和 LocalDB)。

这是因为一行代码 Realm 正在解析我从服务器获得的 JSON。

if let JSON = response.result.value {
    let realm = try! Realm()

    do {
        try realm.write {
            realm.create(EMApplication.self, value:JSON, update: true)
        }
    } catch {
        print("Something went wrong!")
    }                   
}

唯一的问题是 Realm 要求为我设置的每个属性专门提供一个类型,但我至少有一个属性想用作 AnyObject 类型:

class EMAnswer: Object {
    var id = RealmOptional<Int>()

    dynamic var name: String?

    var value: AnyObject?

    var staus: Status?
    var answerType: AnswerType?
}

我的愿望是找到一种方法让 Realm 理解 value 可以是任何类型并相应地解析它。还是我需要另辟蹊径解析 JSON?

【问题讨论】:

    标签: ios json swift realm


    【解决方案1】:

    不可能将AnyObject 属性放入领域Object 模型子类中。它必须是受支持的原始类型之一,单个 Realm Object,或 Realm Object 对象的 List

    如果对象以 JSON 的形式出现,最简单的方法就是将 value 设为 String 属性,这样您就可以将 JSON 中的数据保存为原始状态。然后,您可以稍后检查 value 的值并从那里计算出它的类型。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-07-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-02
      • 2012-12-11
      • 2019-04-15
      • 1970-01-01
      相关资源
      最近更新 更多