Я использую ObjectMapper.framework в быстром и успешно отображенном все значение. Это мой кодКак проверить ключ данных в нижнем ответе?
class CompetitionListModel: Mappable {
var active: Int?
var channel: String?
var competition_type_id: Int?
var country_id: Int?
var created_at: [String: String]?
var ends_at: String?
var id: Int?
var name: String?
var logo: String?
var order: Int?
var parent: Int?
var updated_at: String?
var data: [AnyObject]?
required init?(_ map: Map) {
mapping(map)
}
func mapping(map: Map) {
active <- map["active"]
channel <- map["channel"]
competition_type_id <- map["competition_type_id"]
id <- map["id"]
country_id <- map["country_id"]
created_at <- map["created_at"]
ends_at <- map["ends_at"]
name <- map["name"]
logo <- map["logo"]
order <- map["order"]
parent <- map["parent"]
updated_at <- map["updated_at"]
data <- map["data"]
}
}
и вот мой ответ, который я сопоставляюсь
{
active = 1;
channel = fieldhockey;
"competition_type_id" = 2;
"country_id" = 2;
"created_at" = "2014-09-19T14:45:43";
"ends_at" = "2099-09-19T00:00:00";
id = 31;
logo = "cf78a0a5-9ee2-4419-87e7-90b2eacf6ff5.png";
name = Fieldhockey;
order = "-2";
parent = 0;
"updated_at" = "2015-09-10T09:30:33";
},
{
active = 0;
channel = "fh-eurohockey-u18m-championship2";
"competition_type_id" = 2;
"country_id" = 2;
"created_at" = "2015-07-02T18:03:50";
data = {
};
"ends_at" = "2099-12-31T00:00:00";
id = 112;
logo = "a19945fd-a0db-485f-809d-d6078e7fbfe8.jpg";
name = "EuroHockey U18 Championship II, Boys, 2015";
order = "-2";
parent = 31;
"updated_at" = "2015-09-10T09:26:56";
},
я получаю это значение этого кода
var arrOperation: [CompetitionListModel] = []
и получать значения из arrOperation этой Печати (self.arrOperation [0] .data)
, но вы можете видеть в ответе этот ключ данных не присутствует несколько раз в этом ответе и несколько раз его присутствует. Так что я должен проверить, что ключ данных присутствует или нет, но я отобразил этот ключ, который всегда присутствует в классе модели. поэтому я проверяю по этому коду
if let keyExists = self.arrOperation[indexPath.row].data {
print("key is present")
}
else{
print("key is not present")
}
, но ключ данных всегда присутствует в классе модели, его значение для печати nil. Поэтому, пожалуйста, дайте мне понять, как определить, что ключевое имя данных присутствует в массиве или нет.
self.arrOperation также является объектом класса модели, пожалуйста, посмотрите мой код, и я сделал то же самое для этого, если пусть keyExists = self.arrOperation [indexPath.row] .data { печати («ключ присутствует») } еще { печати («ключ нет») } – IOSDev
Поскольку вы используете простой массив, но я использую модель класс массив, который всегда есть ключ данных. Пожалуйста, загляните в мой код выше, вы получите всю информацию. – IOSDev
У вас есть тип NSArray. Измените его на Array тип –