美文网首页
解析方法

解析方法

作者: 小呆鸟 | 来源:发表于2016-09-24 11:03 被阅读0次

    在学习解析的时候,我们通常这样写(直接拿项目中的接口给大家测试下)

    MembersModel.h中

    接口请求的数据

    数据添加到数组

    打印数组

    看上去很有条理,按部就班,但是这种方法有确定,如果数据多了,累死人,所以我教大家一个简单的方法

    简单使用setValuesForKeysWithDictionary

    只需要一句话就可以替代之前的数据添加到数组

    之前

    使用setValuesForKeysWithDictionary方法

    输出

    是不是很方便了。假如有20个数据我们就不用像之前那样一个个赋值,现在只需要一句话轻松搞定

    深入一些

    后台在接口里面添加了新的字段没有告诉我们,会怎么样。

    拿项目里的接口举例,我们把成员头像注掉

    我们在请求数据

    玩蛋啦,炸啦!通过了编译,但是运行就炸啦


    因为在model中,没有对应的M_IMAGE属性,所以导致程序爆炸

    解决方法

    MembersModel.h中

    MembersModel.m中

    这个方法里什么都不用写  直接怼上去就行

    现在我们在运行输出一下

    我们的数组里面确实是没有之前的M_IMAGE了,有人可能说不对啊 你之前有6条数据现在怎么成一条了,因为是后台大哥把我建的群里面的成员删得就剩一个了,总之咱们成功啦

    如果请求的数据和model中的属性名字不同,应该怎么办?

    首先我们把MembersModel.h中ID改成Id,这样就和接口请求来的字段不一样了

    这时候就需要在MembersModel.m中的setValue:forUndefinedKey方法中加操作了

    输出

    正常输出

    这样写个人感觉还是有点麻烦,所以在教大家一个更简单的,李明杰老师的MJExtension,确实是很方便

    使用方法,把请求的数据添加到数据,一句话轻松搞定:字典数组 -> 模型数组

    这种方法是不是更加简单,运行输出

    正常输出。

    本人新手呆鸟,忘各位老司机多多鞭策,使我快速成长。谢啦

    相关文章

      网友评论

          本文标题:解析方法

          本文链接:https://www.haomeiwen.com/subject/mxntyttx.html