无法从解析代码块中获取数组PFQuery对象

时间:2014-08-18 04:24:57

标签: ios parse-platform pfquery pfobject

我不知道与parse的处理是什么,但由于某种原因它不允许我将检索到的数组保存到我创建的可变数组中。它在解析代码块内部工作,但一旦在外部,它显示为null。请帮忙?

 PFQuery *query = [PFQuery queryWithClassName:@"comments"];
    [query whereKey:@"flirtID" equalTo:recipe.flirtID];
    [query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
        if (!error) {


            comments = [[NSMutableArray alloc]initWithArray:objects];

            // Do something with the found objects
            for (PFObject *object in objects) {

            }
        } else {
            // Log details of the failure
            NSLog(@"Error: %@ %@", error, [error userInfo]);
        }
    }];
    NSLog(@"%@",[comments objectAtIndex:0]);

1 个答案:

答案 0 :(得分:1)

它实际上正常工作。 您应该了解块的工作原理。

修改:尝试阅读Apple's Documentation

你是NSLogging'评论' 之前评论实际上已设置。这是如何运作的? 你看,查询在后台运行,实际上需要一些时间。它以异步方式运行 。但是块外的代码会立即运行。

虽然代码出现之前,因为它是一个异步块,它可以并且将随时运行。

试试这个:

comments = [[NSMutableArray alloc]initWithArray:objects];
NSLog(@"%@",[comments objectAtIndex:0]);

重要的问题是,查询后你想做什么?看起来你想保存评论,但那又怎样?这将决定你接下来要做什么。