Swift 2.1: невозможно сопоставить объект JSON с объектом Realm с помощью ObjectMapper

Я пытаюсь сопоставить свой объект JSON с объектом Realm с помощью ObjectMapper, но получаю ноль.

import RealmSwift
import ObjectMapper

class Notification: Object, Mappable {
dynamic var id = 0
dynamic var isProcessed = false
dynamic var type = ""
var supersedes : Int?

required convenience init?(_ map: Map) {
    self.init()
}

// Mappable
func mapping(map: Map) {
    id <- map["id"]
    isProcessed <- map["isProcessed"]
    type <- map["type"]
    supersedes <- map["supersedes"]
}
}

Я использую следующую строку кода для сопоставления входящего JSON с указанным выше объектом Realm.

let notif = Mapper<Notification>().map(notification) // notif here is nil

уведомление - это объект JSON (используется библиотека SwiftyJSON)

Пример уведомления в формате JSON:

  {
        data =             {
            buyerInfo =                 {
                image = "";
                name = "";
                userId = UID2268351488;
            };
            sellerSKUs =                 (
                                    {
                    id = SSK236123228808967424;
                    price =                         {
                        amount = 888;
                        currency = THB;
                    };
                    quantity = 2;
                },
                                    {
                    id = SSK563365068895040768;
                    price =                         {
                        amount = 6865;
                        currency = THB;
                    };
                    quantity = 1;
                }
            );
            subOrderId = SOD751798094080240;
        };
        id = 39038;
        isProcessed = 0;
        supersedes = "<null>";
        type = PendingSubOrderConfirmationNotification;
    },

Пожалуйста помоги!


person dashbashrumble    schedule 17.12.2015    source источник


Ответы (1)


Вы не можете комбинировать ObjectMapper и SwiftyJSON таким образом. Либо вы предоставляете rawValue из структуры SwityJSON JSON в качестве аргумента Mapper.map ObjectMapper, либо вместо этого используете просто _ 4_.

person marius    schedule 17.12.2015