ios - PFQuery FindObjectsInBackground Returns 0 -
in uiviewcontroller trying query parse server, keep getting return of 0 it, though know 100% class have objects in it. thoughts?
pfquery *query = [pfquery querywithclassname:@"general"]; int i; (i = 0; < [follows count]; i++) { [query wherekey:@"session" containedin:follows]; } query.cachepolicy = kpfcachepolicycachethennetwork; [query orderbydescending:@"createdat"]; [query findobjectsinbackgroundwithblock:^(nsarray *objects, nserror *error) { // never gets here... nslog(@"objects%@", objects); if (!error) { nslog(@"successfully retrieved %lu objects.", (unsigned long)objects.count); (pfobject *object in objects) { nslog(@"%@", object.objectid); } // [self gotomain]; } else { nslog(@"error: %@ %@", error, [error userinfo]); } }]; it tells me there no error retrieved 0 objects in console.
as other suggested, first simplest query:
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, [error userinfo]); } }]; if executed without error, returns 0 objects, , dashboard shows there objects should returned, class name must wrong. please double check class name, e.g. spelling.
if objects returned, filter must wrong. for wrong 2 reasons anywhere:
1) loop executed follows.count - times, executes same instruction, since index not used. guess wanted write (but wrong)
(i = 0; < [follows count]; i++) { [query wherekey:@"session" containedin:follows[i]]; } 2) wrong because can have single filter wherekey:containedin:. has been mentioned devkyle, single filter overwritten follows.count-1 - times, , last filter used.
guess wanted have logical or of individual filters. if so, had flatten array, i.e. make single array nsarray *flattenedfollows of elements in follows[i], see here , set single filter
[query wherekey:@"session" containedin: flattenedfollows]; edit:
1 last idea: if query correct (besides of loop) , no object returned anyway, might don't have right access them. so, please, check acl field of these records has correct access rights.
Comments
Post a Comment