2014-09-07 2 views
0

NSObject 배열이 있습니다. 각 요소는 다음 속성 (name, id, comment)을가집니다. parse.com 서버를 사용하여 iOS 앱 데이터를 보내고 가져옵니다. 데이터를 저장에 대한 나의 코드} 다음NSArray에서 데이터를 구문 분석에 저장합니다.

- (IBAction)order:(id)sender { 

    PFObject *obj = [PFObject objectWithClassName:@"Table_1"]; 

    for (SelectedIteam *iteam in _dataArray) { 
     [obj setObject:iteam.name forKey:@"Name"]; 
     [obj setObject:iteam.id forKey:@"ID"]; 
     [obj setObject:iteam.comment forKey:@"Comment"]; 
     [obj saveInBackground]; 
    } 

입니다

하지만 단지 내있는 NSArray의 마지막 요소는 구문 분석 서버에 저장됩니다

. 배열에서 서버를 구문 분석하기 위해 모든 요소를 ​​저장할 수 있습니까?

답변

0

입니다. 대신 PFObject의 saveAllInBackground 메소드를 사용합니다. 그렇지 않으면 한 번의 호출로 동일한 결과를 얻을 수있을 때 배열의 모든 객체에 대해 Parse를 호출합니다.

- (IBAction)order:(id)sender { 

    NSMutableArray *items = [[NSMutableArray alloc] init]; 

    for (SelectedIteam *iteam in _dataArray) { 

      PFObject *obj = [[PFObject objectWithClassName:@"Table_1"]; 

      [obj setObject:iteam.name forKey:@"Name"]; 
      [obj setObject:iteam.id forKey:@"ID"]; 
      [obj setObject:iteam.comment forKey:@"Comment"]; 

      [items addObject: obj]; 
     } 

     [PFObject saveAllInBackground:items]; 
} 

https://parse.com/docs/ios/api/Classes/PFObject.html#//api/name/saveAllInBackground :

0

모든 요소를 ​​추가하려면 PFObject를 for 루프에 정의해야합니다. 올바른 코드는 '

- (IBAction)order:(id)sender { 

for (SelectedIteam *iteam in _dataArray) { 
    PFObject *obj = [PFObject objectWithClassName:@"Table_1"]; 
    [obj setObject:iteam.name forKey:@"Name"]; 
    [obj setObject:iteam.id forKey:@"ID"]; 
    [obj setObject:iteam.comment forKey:@"Comment"]; 
    [obj saveInBackground]; 
    } 
} 
관련 문제