2014-07-01 23 views
0

我試圖檢索我的解析記錄的objectId。我可以保存和檢索數據好,但通過所有解析文檔,谷歌和SO,我似乎無法得到一個明確的答案如何獲得id訪問記錄之前的主要塊沒有硬編碼objectId作爲在Parse的教程中。從解析中檢索已保存的objectID

getObjectInBackgroundWithId:@"SS8Cw7rT1h" < --------試圖檢索object id去這裏

保存數據解析INC objectId這裏(都好)

PFObject *scheme = [PFObject objectWithClassName:@"SchemeProvider"]; 

//Sections of class 
scheme[@"schemeName"] = self.schemeName.text; 
scheme[@"schemeRegistrationNumber"] = self.registrationNumber.text; 

//Save then get object id of saved row 
[scheme saveInBackgroundWithBlock:^(BOOL succeeded, NSError *error) { 

    [scheme objectId]; 
    NSLog(@"SCHEME ROW ID %@",[scheme objectId]); 



}]; 

從檢索解析(一切正常) - 除 - 在主塊之前無法獲得objectID

PFQuery *queryScheme = [PFQuery queryWithClassName:@"SchemeProvider"]; 

//NSString *myobjectId = [queryScheme valueForKey:@"objectId"]; <------trying to retrive object id 

[queryScheme getObjectInBackgroundWithId:@"SS8Cw7rT1h" block:^(PFObject *retrivedData, NSError *error) { 

    NSLog(@"All data = %@", retrivedData); 

}]; 

回答

3

我剛纔打這個問題,並在迅速

你的例子爲,雖然在塊保存多數民衆贊成在運行後,在後臺

您可以訪問OBJECTID塊保存功能它保存到雲

var foo = PFObject(className:"Foo") 
foo["bar"] = "something" 
foo.saveInBackgroundWithBlock(){(succeeded: Bool!, error:NSError!) in 

    if succeeded 
    { 
     self.fooLabel.text = foo.objectId 
    } 
} 

你可以存儲對象ID爲某個對象例如,在數據結構或與核心數據,如果你需要它以後訪問

否則,你需要查詢與屬性值的對象我想

喜歡在這裏看到:https://www.parse.com/docs/ios_guide#queries-basic/iOS

希望這有助於

+0

嗨,香港專業教育學院已經得到了'objectId'使用塊的方法保存,想讀它是問題 – JSA986

+0

塊方法是前進的方式來獲得'obj id',我更新了我的代碼,因爲我的代碼不是很正確,認爲保存對象id爲NSSUser默認值將會執行,除非其他人有清理器辦法。感謝您的swift代碼,很有用。 upvoted – JSA986