2013-10-08 53 views
0

我正在尝试使用ReactiveCocoa刷新对象的提取数组,并且我想筛选出已删除的结果。我似乎无法让事情正常工作 - 我预计filter会在trackSequence中通过每个NSManagedObject,但是我会看到一个_PFBatchFaultingArray对象。筛选RACSequence不能按预期方式工作

任何人都可以阐明我做错了什么?谢谢!

RACSequence *trackSequence = [documentContextUpdated map:^NSArray *(RACTuple *tuple) { 
    return [DWFAbstractTrack MR_findAllSortedBy:DWFAbstractTrackAttributes.order ascending:YES inContext:tuple.second]; 
}].sequence; 

RAC(self, tracks) = [trackSequence filter:^BOOL(NSManagedObject *managedObject) { 
    return (NO == [managedObject isDeleted]); 
}].signal; 

回答

1

貌似trackSequenceNSArrayRACSequence S,不NSManagedObject秒。也许你想在-map:-filter:

RAC(self, tracks) = [documentContextUpdated map:^NSArray *(RACTuple *tuple) { 
    NSArray *tracks = [DWFAbstractTrack MR_findAllSortedBy:DWFAbstractTrackAttributes.order ascending:YES inContext:tuple.second]; 
    return [tracks.rac_sequence filter:^BOOL(NSManagedObject *managedObject) { 
     return (NO == [managedObject isDeleted]); 
    }].array; 
}]; 
+0

完美,就是这样。出于某种原因,我甚至没有想过用这种方式回报。你是一个脑外科医生:) –

相关问题