1

ObjectMapper を使用して JSON オブジェクトを Realm オブジェクトにマップしようとしていますが、nil を取得し続けます。

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;
    },

助けてください!

4

1 に答える 1

1

そのように ObjectMapper と SwiftyJSON を組み合わせることはできません。rawValueSwityJSONJSON構造体の を ObjectMapper の引数として提供するか、Mapper.map代わりに を使用しますNSJSONSerialization

于 2015-12-17T19:21:14.170 に答える