0

Parse にデータを保存しましたが、ゲームをプレイしているユーザーのトップ 10 スコアを作成するためにそれにアクセスして、ユーザーがリストにのみ表示されるようにする必要があります。データは、各ゲームが名前、パスなどを持つユーザーを持つセッションを持つように保存されます。

したがって、Run Session => User (名前、パス、電子メールなど) になります。

ユーザーが既に topTen に存在するかどうかを確認し、名前を表示するために、ユーザーの名前にアクセスする必要があります。

セッションのデータにはアクセスできますが、ユーザーのデータにはアクセスできません。

        int counter = 0;

    ParseQuery<ParseObject> query = ParseObject.GetQuery("Runs").WhereEqualTo("scoreIdentifier", GameController.instance.scoreContext).OrderByDescending("score");
    query.Include("session.user");
    query.FindAsync().ContinueWith(t => {
        IEnumerable<ParseObject> results = t.Result;
        foreach (var item in results) {
            if (item.ContainsKey("score")) {
                if (counter < 10) {
                    topTenScores[counter] = item.Get<int>("score");
                    topTenNames[counter] = item.ObjectId;
                    ParseObject session = item.Get<ParseObject>("session");
                    Task<ParseObject> user = session.FetchAsync<ParseObject>();

                    user.ContinueWith(tt => {
                        ParseObject userName = tt.Result;
                        Debug.Log("CHECK FOR TT " + tt.Result.ObjectId);
                    });
                }
                if (counter == 9) {
                    updateTopTen = true;
                }
                counter++;
            }
            if (counter < 10)
                updateTopTen = true;
        }
    });

tt.Result.ObjectId は Session の objectId を書き出しますが、私はそれが User の場合だと思います。

私が間違っていることに関する提案はありますか?

4

1 に答える 1