使用ObjectMapper和Realm在数据库中映射单个数组

时间:2016-06-03 08:36:37

标签: arrays json realm alamofire objectmapper

所以我有以下JSON:

o2

我试图通过以下方式使用ObjectMapper进行映射:

{
 result: [
    " Sans Marque",
    "'t Boerinneke",
    "1 mètre de bière",
    "1ste prijs",
    "2Force",
    "2K Games ",
    "3M",
    "4711",
    "505 Games",
    "8x4",
    "ABB",
    "ACO",
    ...
  ]
}

我的Realm数据库中没有填充任何内容。由于没有键,我不能使用搜索< - map [“id”]方式。 有谁知道如何将这些结果放入我的Realm数据库? 谢谢!

1 个答案:

答案 0 :(得分:1)

您可以尝试以下代码吗?我认为ObjectMapper不能直接将数组串行化为RealmObject类的数组。因此,首先将字符串数组存储到临时变量,然后枚举数组以从字符串中实例化模型类,然后附加它。

class AutoCompleteResult: Mappable {
    var result: [AutoComplete]?

    required init?(_ map: Map) {

    }

    func mapping(map: Map) {
        var result: [String]?
        result <- map["result"]
        if let result = result {
            self.result = [AutoComplete]()

            for search in result {
                let autoComplete = AutoComplete()
                autoComplete.search = search
                self.result?.append(autoComplete)
            }
        }
    }

}

class AutoComplete: Object {
    dynamic var search: String?
}