2016-03-24 11 views
0

JSONレスポンスに動的な子オブジェクトがあり、各設定に「子」があり、複数のオブジェクトを持つことができます(ネストされた方法で詳しく説明します)。このデータをコアデータに保存してそこからロードする必要があります。また、途中でユーザーを選択すると、ユーザーの選択を保存する必要があります。コアデータにparent - > childrenリレーションシップを使用して動的に生成されたJSONデータを保存しますか?

  1. このデータをすべて保存するエンティティモデルでエンティティリレーションシップを実装する最も良い方法は何ですか?

  2. このようなシナリオでは、これは良いJSON形式ですか?

EX:携帯電話 - >サムスン - > S3(ときに、ユーザーがクリック、これはさらに行くことができます)

preferences =  [ 
     {  
      id = 1; 
      name = Mobiles; 
      children = 
      [ 
       { 
        id = 3; 
        name = Samsung; 
        children = []; 
       }, 
       { 
        id = 4; 
        name = Nokia; 
        children = []; 
       } 
      ] 
     }, 
     { 
      id = 2; 
      name = Electronics; 
      children = [ 
       { 
        id = 5; 
        name = Samsung Curve TV; 
        children = []; 
       } 
      ] 
    } 
    ] 

答えて

2

このデータ・フォーマットを使用して2.広告、あなたが再帰またはスタックを使用する必要があります単一のエンティティを取得する。

少し異なるアプローチを提案します。

[ 
    { 
    "id": 1, 
    "name": "Mobiles" 
    }, 
    { 
    "id": 2, 
    "name": "Electronics", 
    "parent_id": 1 
    }, 
    { 
    "id": 3, 
    "name": "Samsung" 
    "parent_id": 1 
    }, 
    { 
    "id": 4, 
    "name": "Nokia" 
    }, 
    { 
    "id": 5, 
    "name": "Samsung Curve TV" 
    "parent_id": 2 
    } 
] 

このような構造では、再帰またはスタックを使用する必要はありません。 CoreDataにデータを挿入するには、単一の列挙で十分です。

ad 1.エンティティには「親」と「子」の関係が必要です。

+0

こんにちはダミアン、あなたの答えをありがとう。それは良いアプローチです! – happycoder

関連する問題