Перекрыть пользовательский ответ сервера для каждого сопоставления пути ресурса с классом

Я пытаюсь использовать службу REST в приложении для iOS. Я использую пальто.

В моем OVCHTTPRequestOperationManager Подкласс у меня следующий:

+ (NSDictionary *)modelClassesByResourcePath {
    return @{
            @"users/*" : [SCUser class],
            @"user/*" : [SCUser class],
            @"card/*" : [SCCreditCard class],
            @"cards*" : [SCCreditCard class]
    };
}

+ (NSDictionary *)responseClassesByResourcePath{
    return @{
             @"cards" : [SCCardResponse class]
    };
}

Я хочу сериализовать полезную нагрузку JSON следующим образом:

{
    "total": 2,
    "cards": [
        {
            "balance": 1000.0,
            "ownerName": "Test One",
        },
        {
            "balance": 100.0,
            "ownerName": "Test Two",
        },
        ...
}

Пока все хорошо, но когда я пытаюсь получить карточки от объекта ответа, я получаю массив NSDictionaryобъекты, а не массив SCCreditCard объекты.

У кого-нибудь было это? Как это решить?

1 ответ

Я решил это, был дополнительный * в modelClassesByResourcePath метод:

+ (NSDictionary *)modelClassesByResourcePath {
    return @{
            @"users/*" : [SCUser class],
            @"user/*" : [SCUser class],
            @"card/*" : [SCCreditCard class],
            @"cards" : [SCCreditCard class]
    };
}

Все работает сейчас.

Другие вопросы по тегам