2016-09-19 45 views
1

我使用領域使用JSON響應保存從我的服務器數據。不過,我很難將字典保存爲Realm對象。我的數據如下所示:保存JSON字典境界斯威夫特

"stuff": { 
    "id": 1, 
    "icon_image": [ 
    { 
     "photo": "http://myserver.com/image/1.png" 
    } 
    ], 
    "photo": "http://myserver.com/image/header.png", 
    "thumbnail_image": [ 
    { 
     "photo": "http://myserver.com/image/3.png" 
    } 
    ] 
} 

如何將其保存爲Realm對象?在Realm中,只能保存原始類型。我可以設法保存對象,如字符串或浮動。

+1

我認爲這[post](http://stackoverflow.com/questions/33479733/realm-map-json-to-realm-objects-with-alamofire)可能會幫助你 –

回答

1

要保存顯式類型在領域的數據,你需要實現模型子類沿着這些線的東西:

class Image: Object { 
    dynamic var photo = "" 
} 

class Stuff: Object { 
    dynamic var id = 0 
    dynamic var photo = "" 
    let iconImage = List<Image>() 
    let thumbnailImage = List<Image>() 
} 

像Đinh廣HIEU在評論中說,它是那麼給你將這個JSON字符串的結果'映射'到Realm。在非常簡單的情況下,可以使用Object.init(value: dictionary)映射一個斯威夫特詞典領域,但它的使用更安全,功能更全面的庫一樣ObjectMapper,可以處理不同的情況,其中JSON不來正好你的應用程序是如何期待它。

-1

你可以使用Gloss解析JSON響應轉換成一個對象,迅速可以操作,然​​後保存,使用境界?

+0

Swift的[基礎可以本機解析JSON] (https://developer.apple.com/reference/foundation/jsonserialization),所以沒必要爲這個特定的第三方來解決這個問題。 –