Я использую облачный пакет Kentico Swift SDK для получения набора элементов из CMS с использованием API доставки в фоновом режиме.
Один из методов Swift SDK позволяет мне получить ContentType для определенного элемента в CMS, чтобы я мог затем сопоставить его с объектом в моем коде. Вот код:
self.client.getContentType(name: codename, completionHandler: { (isSuccess, contentType, error) in
guard error == nil else {
print(error!)
return
}
if isSuccess {
if let type = contentType {
print(type)
self.client.getItem(modelType: type, itemName: codename, completionHandler: { (isSuccess, deliveryItem, error) in
if isSuccess {
// save this Element
print(deliveryItem)
} else {
if let error = error {
print(error)
}
}
})
}
}
})
атрибут codename
- это имя объекта, для которого я пытаюсь найти ContentType
. Вызов завершается успешно, и я получаю свой объект ContentType
, к сожалению, в нем нет свойств, которые не nil
.
Я предполагаю, что это должно дать мне имя типа как String, чтобы я мог затем сопоставить его с моим классом.