解析:查询指针数组时出错102

时间:2015-04-30 16:12:57

标签: ios arrays parse-platform

我刚刚开始使用Parse,它很容易理解,直到我进入更高级的方面,例如保存指针数组。

我在Parse论坛上看到,最好的方法是将JSON对象保存到定义了一组类型的服务器,例如我有一组用户:

netsh interface set interface name="Local Area Connection 2" admin = ENABLED
netsh interface set interface name="Local Area Connection 3" admin = ENABLED

此信息保存到Parse就好了,但是当我来查询数据时,我从未得到Parse错误102.

我试过了:

[
    {
         "__type":"Pointer",
         "className":"_User",
         "objectId":"YkIlOohXZV"
    },
    {
         "__type":"Pointer",
         "className":"_User",
         "objectId":"MBe4g6t8av"
    }
]

为什么我收到错误102?有没有更好的方法来搜索数组,还是我必须从服务器查询所有内容?

1 个答案:

答案 0 :(得分:2)

问题是您正在比较指向字符串的指针,而不是另一个解析对象。

我在Android上使用parse,所以我不确定语法,但你应该使用whereKeyequalTo解析用户本身(PFUser.currentUser())而不是字符串查找它的ID,因为它没有存储为字符串。当涉及数组时,equalTo在匹配内搜索。

我不知道Swift,但我认为它应该在Obj-C中看起来像这样:

PFQuery *query = [PFQuery queryWithClassName:@"Requests"];
[query whereKey:@"recipients" equalTo:[PFUser currentUser]];

再次......请原谅任何语法错误......

P.S。只是为了确定,这是我在我的应用程序中使用的一个可用的Java代码片段:

ParseQuery<ParseObject> query = ParseQuery.getQuery("Requests");
query.whereEqualTo("recipients", ParseUser.getCurrentUser());