在查询 REST API 中使用 $select 时,Parse.com 返回的结果不一致。

我遇到了一个解析查询的问题,有时它起作用,但有时它不起作用,我认为这取决于代码中的 $select 部分。我已经调试了从Parse返回的结果,有时它包括我期望的所有数据,但有时它会错过 $select 的数据。我甚至尝试在 $select 中硬编码 objectId,但仍然不起作用。

我有一个名为 Data 的类,它保存我的游戏和轮次数据。游戏行具有 'G' 类型,而轮次数据具有 'R' 类型。每个轮次 'R' 行都有一个 gameObjectId 列,与 'G' 行相关。

获取 G 行的部分始终返回正确的结果,如果我硬编码 gameObjectid(而不是 $select),它总是有效的

有人以前遇到过这种问题吗?我99%确定我在查询中所做的是正确的,但它的行为并不像预期的那样。如果有人能检查一下是否有什么明显的问题,那就太好了?

我现在非常苦恼,因为我的应用程序刚刚上线了..

在JSON中,以下两个查询(精简到最小)应该返回完全相同的结果,但第二个查询不一致:

{"$or":[{"objectId":"TnY7YAKUm4","type":"G"},{"gameObjectId":"TnY7YAKUm4","type":"R"}]}

{"$or":[{"objectId":"TnY7YAKUm4","type":"G"},{"gameObjectId":{"$select":{"key":"objectId","query":{"where":{"objectId":"TnY7YAKUm4","type":"G"},"className":"Data"}}},"type":"R"}]}

我的查询作为 LUA 表格(用于 Corona)设置如下:

local queryTable =
{
   ["where"] =
   {        ["$or"] =
            {
                    {
                        ["type"] = "G",
                        ["$or"] = {
                                    {["host"] = settings.userID},
                                    {["opponent"] = settings.userID}
                                }
                    },
                    {
                        ["type"] = "R",
                        ["gameObjectId"] =
                            { ["$select"]  =
                                {
                                    ["query"] =
                                    {
                                        ["className"] = "Data",
                                        ["where"] =
                                        {
                                            --["objectId"] = "TnY7YAKUm4"
                                            ["type"] = "G",
                                            ["$or"] = {
                                                 {["host"] = settings.userID},
                                                 {["opponent"] = settings.userID}
                                            }
                                        }

                                    },
                                    ["key"] = "objectId"

                                }
                            }
                    }
            },

    },
    ["limit"] = 1000,
    ["order"] = "type,localId,updatedAt"

}
点赞
用户3781891
用户3781891

这是一个有关解析的问题,现在已经解决了。

2014-11-19 07:52:19