2012-05-13 131 views
0

我似乎能夠使用傳統的loadobjectsatresourcepath:delegate:方法啓動restkit,並且加載對象。但是,當我介紹塊時:^ {},restkit每次崩潰。升級到0.10.0後RestKit崩潰

[[RKObjectManager sharedManager] loadObjectsAtResourcePath:@"/api/v1/places" delegate:self block:^(RKObjectLoader* loader) { 
    loader.objectMapping = [[RKObjectManager sharedManager].mappingProvider objectMappingForClass:[Place class]]; 
}]; 

我得到這個在日誌中:

2012-05-12 19:07:32.266 App - [RKObjectManagerloadObjectsAtResourcePath:delegate:block:]: unrecognized selector sent to instance 0x3aa2e0 
2012-05-12 19:07:32.268 App - *** Terminating app due to uncaught exception 'NSInvalidArgumentException', 
reason: '-[RKObjectManager loadObjectsAtResourcePath:delegate:block:]: unrecognized selector sent to instance 0x3aa2e0' 

如何解決這個問題有什麼想法?謝謝!

回答

1

異常告訴你問題是什麼:RKObjectManager不響應loadObjectsAtResourcePath:delegate:block:。快速瀏覽API文檔顯示the original method不再存在於0.10.0中,似乎已被替換爲loadObjectsAtResourcePath:usingBlock:

您應該能夠通過使用新的方法,以避免該異常:

[[RKObjectManager sharedManager] loadObjectsAtResourcePath:@"/api/v1/places" usingBlock:^(RKObjectLoader* loader) { 
    loader.objectMapping = [[RKObjectManager sharedManager].mappingProvider objectMappingForClass:[Place class]]; 
}]; 
+2

謝謝!那就是我所懷疑的。這對我來說非常困惑,然後我發現Xcode連接到一箇舊的Restkit庫,並且我的代碼完成工作不正確。刪除我的派生數據內容並重建後,一切正常。 – chourobin

相關問題