Reskit iOS-嵌套和重用映射

扎科斯

首先是结构,然后是解释


•[J](json根)
••[A](A对象的数组)
•••[A1](A1的数据)
•••[A2](A2的数据)
•••[A3](.. 。)
••••[A3.B](B对象的数组,A中的成员)
••••••[B1](B1的数据)
•••••[B2](B2的数据)
• •••••[B3](...)
•••••••[B3.A](还是A的数组,但是这次,它在B里面,嗯,休斯顿,我们遇到了问题!! !)


()因此,如您所见,我很难获得位于B内的内部/嵌套A数组。
()此行为在对象C(而不是Objective-C)中重复一次以上。
()从服务器检索的数据结构是众所周知的
()有什么想法吗?谢谢


更新-根据要求提供演示数据!

{
    "arrayOfA": [
        {
            "a_Property": "Name1",
            "array_Of_B": []
        },
        {
            "a_Property": "Name2",
            "array_Of_B": []
        },
        {
            "a_Property": "Name3",
            "array_Of_B": [
                {
                    "b_Property": 10,
                    "array_Of_A": []
                },
                {
                    "b_Property": 15,
                    "array_Of_A": []
                },
                {
                    "b_Property": 20,
                    "array_Of_A": [
                        {
                            "a_Property": "Name4",
                            "array_Of_B": []
                        },
                        {
                            "a_Property": "Name5",
                            "array_Of_B": []
                        },
                        {
                            "a_Property": "Name6",
                            "array_Of_B": []
                        }
                    ]
                }
            ]
        }
    ]
}

温恩

映射既可以引用自身,也可以引用映射以处理递归关系。唯一要考虑的是创建所有映射并同时关联它们(不要调用创建映射的方法,因为这样可能会导致无限调用循环。)


用伪代码:

Mapping *myMapping = ...;
[myMapping addRelationshipFor:... withMapping:myMapping];

which will create a mapping to deal with an object which contains other copies of the same object. The same approach can be taken when there is a recursive relationship between 2 objects:

Mapping *myMapping = ...;
Mapping *myOtherMapping = ...;
[myMapping addRelationshipFor:... withMapping:myOtherMapping];
[myOtherMapping addRelationshipFor:... withMapping:myMapping];

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

ResKit对象映射嵌套对象

来自分类Dev

用于json格式的Reskit v0.2映射

来自分类Dev

ResKit:临时NSManagedObjects

来自分类Dev

RESKit:创建重复的对象

来自分类Dev

Reskit parse multiple type of data for the same field

来自分类Dev

在ReskIt中找不到xcodebuild头文件

来自分类Dev

如何在iOS / xcode中重用颜色和样式?

来自分类Dev

iOS可重用组件

来自分类Dev

ios tableView 重用问题

来自分类Dev

iOS故事板-重用UIViewController

来自分类Dev

重用静态表格检视(iOS)

来自分类Dev

iOS单元重用更改颜色

来自分类Dev

在iOS上映射UIView

来自分类Dev

快速逐行映射iOS

来自分类Dev

Reskit响应只是一个字符串,而不是JSON

来自分类Dev

Reskit解析同一字段的多种类型的数据

来自分类Dev

Reskit-在同一线程而非UI线程上回调

来自分类Dev

Reskit patchObject-在PHP服务器端提取对象

来自分类Dev

iOS中的嵌套块

来自分类Dev

findObjectInBackgroundWithBlock嵌套的ios

来自分类Dev

iOS:存储带有数组和对象嵌套的json

来自分类Dev

嵌套的UICollectionViews,AutoLayout和iOS 8中的旋转

来自分类Dev

结合使用NSPredicate和嵌套数组iOS

来自分类Dev

嵌套的UICollectionViews,AutoLayout和iOS 8中的旋转

来自分类Dev

SwiftUI:可重用跨平台(iOS和macOS)视图中的导航栏标题

来自分类Dev

iOS区域重用项目监控

来自分类Dev

iOS7:UITapGestureRecognizer重用问题

来自分类Dev

在iOS 7中重用UIPickerView中的视图

来自分类Dev

iOS Swift:准备collectionView单元以供重用