使用Parse更新多个对象?

Mug*_*ugs 1 parse-platform swift

如何在单个查询中将多个对象更新为Parse?

以下代码适用于单个条目.

如何更新多个值,我从数组中获取?

 var query = PFQuery(className:"GameScore")
 query.getObjectInBackgroundWithId("xWMyZEGZ") {
 (gameScore: PFObject?, error: NSError?) -> Void in
  if error != nil {
     println(error)
  } else if let gameScore = gameScore {
    gameScore["cheatMode"] = true
    gameScore["score"] = 1338
    gameScore.saveInBackground()
 }
}
Run Code Online (Sandbox Code Playgroud)

Bjö*_*ser 5

您可以使用这些saveAll*:方法一次保存一批对象,而无需单独调用每个对象的保存.基本上,您将要保存的所有对象放入一个数组然后调用[PFObject saveAll:yourArray](只是您可以使用的示例saveAllInBackground:).

以下是Objective-C中的一些示例代码,我对Swift不是很了解,但您可能很容易翻译它.

PFQuery *query = [PFQuery queryWithClassName:@"GameScore"];
[query findInBackgroundWithBlock:^(NSArray *results, NSError *error) {
    NSMutableArray *saveAllOfMe = [NSMutableArray new];
    for (PFObject *object in results) {
        object[@"cheatMode"] = @(YES);
        object[@"score"] = @(1234);
        [saveAllOfMe addObject:object];
    }
    [PFObject saveAllInBackground:saveAllOfMe block:^(BOOL success, NSError *error) {
        // Check result of the operation, all objects should have been saved by now
    }];
}];
Run Code Online (Sandbox Code Playgroud)

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