解析方法

在學(xué)習(xí)解析的時(shí)候,我們通常這樣寫(xiě)(直接拿項(xiàng)目中的接口給大家測(cè)試下)

MembersModel.h中


接口請(qǐng)求的數(shù)據(jù)

數(shù)據(jù)添加到數(shù)組

打印數(shù)組

看上去很有條理,按部就班,但是這種方法有確定,如果數(shù)據(jù)多了,累死人,所以我教大家一個(gè)簡(jiǎn)單的方法

簡(jiǎn)單使用setValuesForKeysWithDictionary

只需要一句話就可以替代之前的數(shù)據(jù)添加到數(shù)組

之前

使用setValuesForKeysWithDictionary方法


輸出

是不是很方便了。假如有20個(gè)數(shù)據(jù)我們就不用像之前那樣一個(gè)個(gè)賦值,現(xiàn)在只需要一句話輕松搞定

深入一些

后臺(tái)在接口里面添加了新的字段沒(méi)有告訴我們,會(huì)怎么樣。

拿項(xiàng)目里的接口舉例,我們把成員頭像注掉


我們?cè)谡?qǐng)求數(shù)據(jù)

玩蛋啦,炸啦!通過(guò)了編譯,但是運(yùn)行就炸啦


因?yàn)樵趍odel中,沒(méi)有對(duì)應(yīng)的M_IMAGE屬性,所以導(dǎo)致程序爆炸

解決方法

MembersModel.h中

MembersModel.m中

這個(gè)方法里什么都不用寫(xiě) ?直接懟上去就行

現(xiàn)在我們?cè)谶\(yùn)行輸出一下

我們的數(shù)組里面確實(shí)是沒(méi)有之前的M_IMAGE了,有人可能說(shuō)不對(duì)啊 你之前有6條數(shù)據(jù)現(xiàn)在怎么成一條了,因?yàn)槭呛笈_(tái)大哥把我建的群里面的成員刪得就剩一個(gè)了,總之咱們成功啦

如果請(qǐng)求的數(shù)據(jù)和model中的屬性名字不同,應(yīng)該怎么辦?

首先我們把MembersModel.h中ID改成Id,這樣就和接口請(qǐng)求來(lái)的字段不一樣了


這時(shí)候就需要在MembersModel.m中的setValue:forUndefinedKey方法中加操作了

輸出

正常輸出

這樣寫(xiě)個(gè)人感覺(jué)還是有點(diǎn)麻煩,所以在教大家一個(gè)更簡(jiǎn)單的,李明杰老師的MJExtension,確實(shí)是很方便

使用方法,把請(qǐng)求的數(shù)據(jù)添加到數(shù)據(jù),一句話輕松搞定:字典數(shù)組 -> 模型數(shù)組

這種方法是不是更加簡(jiǎn)單,運(yùn)行輸出

正常輸出。

本人新手呆鳥(niǎo),忘各位老司機(jī)多多鞭策,使我快速成長(zhǎng)。謝啦

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容