0

次のJSONを解析しようとしていますが、次のエラーが発生します。

"エラーキーパスのオブジェクトマッピングが見つかりませんでした:''"

私が理解している限り、これはSetMapping:forKeyPath:を提供していないためですが、JSONで確認できるようにキーが変更されるため(BBC ONE、BBC TWOなど)、これを設定できません。これを提供するためにコアデータに保存されたこれらの詳細を含む別のjsonファイルとSIDを相互参照することを計画しているため、サービス名を保存する必要はありません。(可能であれば)。このエラーを回避する方法はありますか?

これが私のJSON(カットダウンバージョン)です

{
    "BBC ONE": [
        {
            "Name": "Programme 1",
            "Description": "A desc of a programme",
            "ONID": 1,
            "TSID": 2,
            "SID": 3,
            "CRID": "crid_address"
        },
        {
            "Name": "Programme 2",
            "Description": " Another desc",
            "ONID": 9,
            "TSID": 99,
            "SID": 999,
            "CRID": "crid_2"
        }
    ],
    "BBC TWO": [
        {
            "Name": "bbc_programme",
            "Description": "programme 2",
            "Event ID": 4,
            "ONID": 9,
            "TSID": 4,
            "SID": 4,
            "CRID": "crid"
        }
    ]
}

もっと。

これが私のコードです:

RKManagedObjectMapping *epgMapping = [RKManagedObjectMapping mappingForClass:[Epg class] inManagedObjectStore:objectManager.objectStore];

        [epgMapping mapKeyPathsToAttributes:@"Name",@"name",
                                        @"Description", @"desc",
                                        @"Event ID", @"event_id",
                                        @"ONID", @"onid",
                                        @"TSID", @"tsid",
                                        @"SID",  @"sid",
                                        @"CRID", @"crid",nil];


    epgMapping.primaryKeyAttribute = @"crid";

私はさまざまな文書を読み、他の人々の問題を見て、解決策を見つけることができないので、どんな助けでもいただければ幸いです。

ありがとう

4

1 に答える 1

1

jsonの名前と値のペアの名前部分に値を格納しています。jsonを(可能であれば)次のようなものに変更することを提案します。

"Name" : "BBC ONE",
"Programs" : [
    {
        "Name": "Programme 1",
        "Description": "A desc of a programme",
        "ONID": 1,
        "TSID": 2,
        "SID": 3,
        "CRID": "crid_address"
    },
    {
        "Name": "Programme 2",
        "Description": " Another desc",
        "ONID": 9,
        "TSID": 99,
        "SID": 999,
        "CRID": "crid_2"
    }
于 2012-10-23T16:23:50.723 に答える