ios – PFQuery FindObjectsInBackground返回0

ios – PFQuery FindObjectsInBackground返回0,第1张

概述在我的UIViewController中,我试图查询我的解析服务器,但我一直得到0的返回值,虽然我知道100%这个类确实有对象.有什么想法吗? PFQuery *query = [PFQuery queryWithClassName:@"General"]; int i; for (i = 0; i < [follows count]; i++) { [query where 在我的UIVIEwController中,我试图查询我的解析服务器,但我一直得到0的返回值,虽然我知道100%这个类确实有对象.有什么想法吗?
PFquery *query = [PFquery queryWithClassname:@"General"]; int i; for (i = 0; i < [follows count]; i++) {        [query whereKey:@"Session" containedIn:follows]; } query.cachePolicy = kPFCachePolicyCacheThenNetwork; [query orderByDescending:@"createdAt"]; [query findobjectsInBackgrounDWithBlock:^(NSArray *objects,NSError *error) { // it never gets here... NSLog(@"OBJECTS%@",objects); if (!error) {     NSLog(@"Successfully retrIEved %lu objects.",(unsigned long)objects.count);     for (PFObject *object in objects) {         NSLog(@"%@",object.objectID);     }     // [self gotoMain]; } else {       NSLog(@"Error: %@ %@",error,[error userInfo]);   } }];

它告诉我在控制台中成功检索0个对象没有错误.

解决方法 正如其他已经建议的那样,我会先做最简单的查询:
PFquery *query = [PFquery queryWithClassname:@"General"]; [query findobjectsInBackgrounDWithBlock:^(NSArray *objects,NSError *error) { if (!error) {     NSLog(@"Successfully retrIEved %lu objects.",(unsigned long)objects.count); } else {       NSLog(@"Error: %@ %@",[error userInfo]);   } }];

如果它没有错误地执行,则返回0个对象,并且仪表板显示有应该返回的对象,类名必须是错误的.所以请仔细检查班级名称,例如拼写.

如果返回了对象,则过滤器必定是错误的.你的错误有两个原因:
1)for循环执行follow.count – times,但它始终执行相同的指令,因为不使用索引.我想你想写(但这也错了)

for (i = 0; i < [follows count]; i++) {        [query whereKey:@"Session" containedIn:follows[i]]; }

2)这是错误的,因为你只能有一个过滤器whereKey:containedIn:.正如DevKyle所提到的,这个单个过滤器会被覆盖follow.count-1次,并且只使用最后一个过滤器.
我想你想要有类似于各个过滤器的逻辑OR.如果是这样,你必须展平你的数组,即制作单个数组NSArray * flattenedFollows中的所有元素如下[i],见here然后设置一个过滤器

[query whereKey:@"Session" containedIn: flattenedFollows];

编辑:最后一个想法:如果你的查询是正确的(除了for循环)并且没有返回任何对象,可能是你没有权限访问它们.因此,请检查这些记录的ACL字段是否具有正确的访问权限.

总结

以上是内存溢出为你收集整理的ios – PFQuery FindObjectsInBackground返回0全部内容,希望文章能够帮你解决ios – PFQuery FindObjectsInBackground返回0所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1103606.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存