1

我正在寻找建立一个报告系统,它将有罐装报告和用户创建的报告,对于每个报告,我需要名称、描述,下面将包含的信息是我已经 jsonlint'ed 的结构代表一个名为“审查进度”的报告(在罐装报告结构内)需要的所有数据。

{
"Canned": [
    {
        "Name": "Review Progress",
        "Description": "Quick Look at ...",
        "Contents": {
            "Collections": [],
            "Filters": [],
            "Facets": {
                "Review Status": [
                    {
                        "Reviewed": {
                            "value": "300",
                            "enabled": "true"
                        }
                    },
                    {
                        "Not Reviewed": {
                            "value": "150",
                            "enabled": "false"
                        }
                    }
                ]
            }
        }
    }
]

}

我是否通过创建一系列字典和数组来在这里吠叫错误的树,因为访问其中的项目以设置 tableview 将开始看起来像这样?

cell.textLabel.text = self.reports[indexPath.section][@"Reports"][indexPath.row][@"Name"];

有人会为了方便而建议一种不同的方法,比如 coredata/某种 DB 吗?我问,因为用户将能够创建自己的报告,这些报告必须具有相同的数据。

4

1 回答 1

2

一种快速的方法应该是使用JSON Accelerator(免费)从您的 JSON 中生成对象模型。

然后将此存储库提供的类别添加到您的“顶级”生成的类模型中:

https://github.com/psineur/NSObject-AutomagicCoding

轻松将字典表示(即 plist/json 结构化数据)加载/保存到文档文件夹

这将与

cell.textLabel.text = self.reports[indexPath.section][@"Reports"][indexPath.row][@"Name"];

但由于对象模型,我认为更清洁

于 2013-08-23T17:24:06.130 回答