0

iPhone アプリに解析を使用しており、PFQuery を使用して PFObject を取得しようとしています。私のクエリとその他の関連コードは次のとおりです。

PFQuery *query = [PFQuery queryWithClassName:@"UserInfo"];
[query whereKey:@"userId" equalTo:@"89b7eb8801b24ace16b35b927ef01d4f"];
[query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
    if (!error) {
        // The find succeeded.
        NSLog(@"Successfully retrieved %d users.", objects.count);
    } else {
        // Log details of the failure
        NSLog(@"Error: %@ %@", error, [error userInfo]);
    }
}];

このメソッドを使用してみましたが、NSArray オブジェクトで 0 の結果が得られます。データ ブラウザーで、userId に一致するオブジェクトが 1 つあることがわかります。そのクラスにデータを追加できますが、取得できません。何か不足していますか?私はParseを初めて使用します。 ここに画像の説明を入力

4

1 に答える 1

0

わかった。appDidFinishLaunching メソッドから作成されたのは匿名ユーザーでした。

このコードは実行されていましたが、私は知りませんでした:

[PFUser enableAutomaticUser];
PFACL *defaultACL = [PFACL ACL];
// Optionally enable public read access by default.
[defaultACL setPublicReadAccess:YES];
[PFACL setDefaultACL:defaultACL withAccessForCurrentUser:YES];

さて、最初は [defaultACL setPublicReadAccess:YES]; 行がコメントされました。作成されたユーザーと匿名ユーザーについて少し調べて、この行のコメントを外したところ、思った通りにうまく機能しました。PFQuery が結果を返し始めました。したがって、defaultACL 値が問題であると想定しています。間違っている場合は修正してください。

于 2012-08-10T16:13:50.163 に答える