2014-03-13 39 views
0

我使用restkit來消費一個Web服務,但是當我得到的數據我想添加一些其他參數,我搜索,我發現我應該實現函數稱爲willsave,但我不知道方式Restkit編輯插入coredata

NSDictionary *params = [NSDictionary dictionaryWithObjectsAndKeys:brandId,@"brandId",categoryId,@"categoryId", nil]; 

[[RKObjectManager sharedManager] postObject:nil path:@"/mywebservice" parameters:params success:^(RKObjectRequestOperation *operation, RKMappingResult *mappingResult) { 

    [self getProductsList]; 

} failure:^(RKObjectRequestOperation *operation, NSError *error) { 

}]; 
+0

這裏有很多缺少的信息。描述您當前的託管對象屬性,從WS獲取的信息,您希望添加的參數以及它們應包含的數據。 'willSave'是NSManagedObject的一種方法,你可以重載,當調用上下文'save'方法時調用它。除非你真的知道你在做什麼,並且這對你來說是正確的解決方案,我建議你暫時不要重寫它。 –

+0

所以你建議我做什麼,如何在插入到數據庫之前修改所使用的對象? – mohamed

+0

可能重複的[URL中的ID的RestKit關係映射](http://stackoverflow.com/questions/17325026/restkit-relationship-mapping-by-id-in-url) – Wain

回答

0

你並不需要使用willSave,這取決於你想要做什麼......

可以使用success塊,通過mappingResult提供的結果迭代,進行更改,然後將主線程MOC保存到持久性存儲中。

willSaveNSManagedObject上的方法。所以,你可以在託管對象的子類上實現它。這將導致更改被保存爲映射過程的一部分,但它僅對派生值/時間戳記非常有用。

+0

我有兩個從服務器下載的對象數組,我想使它們之間的關係,[首先,第二],所以當首先消費並將其插入數據庫時​​,我想插入第二個時告訴他首先指向對象,所以我可以得到所有第二個涉及到第一個 – mohamed

+0

它們有什麼關係?你能配置映射嗎? – Wain

+0

問題是我讓他們每個人彼此分開,類別和產品,,我請求類別從一個Web服務,然後我請求產品使用categoryId從另一個Web服務,,但我想鏈接他們在數據庫,所以我可以選擇特定類別的所有產品 – mohamed