方案
我一直在使用parse.com框架超过6个月的项目。它似乎非常小问题并且充满了错误但是如果我以正确的方式做这件事我需要知道。我正在尝试使用PFQueryTableViewController向用户显示类似的用户信息。我用的是代码......
-(PFQuery *)queryForTable {
PFQuery *matchQuery = [PFUser query];
[matchQuery whereKey:@"mostCommon" equalTo:[PFUser currentUser][@"mostCommon"]];
[matchQuery whereKey:@"userID" notEqualTo:currentUserID];
return matchQuery;
}
问题
当我运行它并尝试将此PFQTVC推入堆栈时,我收到此错误消息...
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Cannot do a comparison query for type: (null)'
这通常与未在数据库中设置信息有关。我提供下面的图片来说明数据浏览器中的 IS 确实数据。
问题
因此,如果查询正确,并且数据在那里...... 那么为什么应用程序崩溃?
答案 0 :(得分:3)
您遇到的一个问题是,为了访问对象密钥的值,您必须使用objectForKey:
在代码中,您使用括号表示法,它不适用于Parse对象。
[[PFUser currentUser] objectForKey:@"mostCommon"];