Это часть JSON моего возврата API, я не знаю, как его получить и сохранить в таблице Realm?
"images": {
"image1": {
"url": "http://www.example.com/900150983cd24fb0d6963f7d28e17f72.gif",
"path": "data/2clb91218/900150983aassfb0d6963f7d28e17f72.gif",
"alt": "YWJj"
},
"image2": {
"url": "http://example/tex/fbce4a1ebe576539394e9493e30c7e5e.gif",
"path": "data/2clb91218/900150983cd24fb0d6963f7d28e332g22.gif",
"alt": "Yaaase22"
},
"image3": {
"url": "https://example.amazonaws.com/card/480_300/9/9jpul1218.jpg",
"path": "data/2clb91218/ewfregwrgw6963f7d28e17f72.gif",
"alt": "pic3"
}
}
ПРИМЕЧАНИЕ: Не проверять эти URL Я не хотел ставить реальные.
ПРИМЕЧАНИЕ: В объекте 'Images' имена дочерних объектов изменяются, поэтому мы имеем: 'image1', 'image2' et c.
Я прочитал в Stackoverflow, что для хранения массивов в RealmTable нам нужно использовать не динамически c List <>, поэтому я храню URL-адреса изображений в классе:
var images = List<String>()
Это часть моего ответа JSON Функция, в которой я пытаюсь получить изображения из API, «продолжить» - это просто получить другие объекты, если изображения не могут получить:
guard let images = data["images"] as? [String: Any?],
let image = images["image1"] as? [String: String],
let imageUrl = image["url"] as? String
else { print("error") ; continue }
Это выше работает для 'image1', но как насчет других имен изображений, как их обрабатывать? И еще одна проблема - объект «Изображения» может вернуть NIL, если нет изображений, которые также могут произойти. Если это ноль, я хочу поставить "ноль" в столбце RealmTable 'images' типа, который я упомянул выше.
Я надеюсь, что вы можете полностью понять меня, если нет, прокомментируйте, и я постараюсь объяснить лучше.