2014-10-30 2 views
0

을 반환하지 않습니다. PFQuery에 대한 예제를 문서에서 바로 복사하고 필드 및 클래스 이름을 넣지 만 completionBlock을 결코 찾지 않습니다. 나는 두 번 여러 번 확인했습니다PFQuery findObjectsInBackgroundWithBlock이 (가)

- (void) loadMyWindows { 
    PFQuery *query = [PFQuery queryWithClassName:@"RGWindow"]; 
    [query whereKey:@"creatorID" equalTo:me.facebookID]; 

    [query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) { 

     // it never gets here... 

     if (!error) { 
      NSLog(@"Successfully retrieved %d objects.", objects.count); 
     for (PFObject *object in objects) { 
      NSLog(@"%@", object.objectId); 
     } 

     [self gotoMain]; 
    } else { 
     NSLog(@"Error: %@ %@", error, [error userInfo]); 
    } 
}]; 

가 ... 데이터 브라우저에서 여러 RGWindow 객체가, 그들은 "creatorID"필드가 있고, 자신의 ACL의 공공 읽기를 말한다.

내가 곤혹 스럽다.

+0

함수가 전혀 호출되지 않았습니까? 함수의 맨 위에 중단 점을 넣으려고 했습니까? –

+0

예, findObjectsInBackgroundWithBlock을 실행하고 멈 춥니 다. – pizzafilms

+0

나는 똑같은 어리석은 문제에 뛰어 들지 않는다. 단지 멈춘다. 내가 찾은 것을 보게 될거야. –

답변

0

필자의 PFObject 하위 클래스에는 init 메서드가 있었지만이 임의의 위치에는 분명히 혼란을 야기했습니다. 어쩌면 나는 더 많은 문서를 읽었어야했다.

1

마지막으로 해결책을 찾았습니다 : 전화를 시도하기 전에 모든 객체가 인스턴스화되었는지 확인하십시오. null이 있으면 쿼리 이전에 멈추고을 차단하십시오. 특정 쿼리에 대한 코드 실행이 중단됩니다. 예를 들어 : currentVirtue이 전무 경우

NSLog(@"test1"); 
PFQuery *dailyChallengesQuery = [GrowthChallenges query]; 
NSLog(@"test2"); 
[dailyChallengesQuery whereKey:kParse_GrowthChallengesGrowthRole equalTo:currentRole]; 
//When currentVirtue = nil, THIS JUST HANGS - nothing below here is called properly 
[dailyChallengesQuery whereKey:kParse_GrowthChallengesGrowthVirtue equalTo:currentVirtue]; 
NSLog(@"test3"); 
[dailyChallengesQuery getFirstObjectInBackgroundWithBlock:^(PFObject *object, NSError *error) { 
    NSLog(@"test4"); 
    currentChallenge = (GrowthChallenges *)object; 
    [self setupTableView]; 
}]; 

, 그것은 기록합니다
TEST1
TEST2

currentVirtue이 제대로 설정되어있는 경우 그러나, 그것은 기록합니다
TEST1
TEST2
TEST3
test4

0을 확인하십시오.변수는 검색어를 설정하기 전에 0이 아닌지 확인해야합니다.

관련 문제