2013-06-21 59 views
0

我有一個應用程序使用coreData罰款。ios coredata獲取特定父元素的元素

我有這樣的關係:

公司< --- >>遊客

現在,我需要找到特定的觀衆一個特定的公司,我可以賣到開始與一些字符串模式人次,

但是如何找到特定公司的?

這裏我的代碼

- (void)searchAvailableDataFullName:(NSTimer*)timer 
{ 

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"fullName BEGINSWITH [c] %@",self.nameTF.text]; 

//sort descriptor! 

NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"fullName" ascending:YES selector:@selector(localizedCaseInsensitiveCompare:)]; 

//the relationship of interest?? 
Visitor *theVisitor = nil; 
theVisitor.company = self.selectedCompany; 

NSMutableArray *fullNamesArray = [NSMutableArray arrayWithArray:[Visitor allWithPredicate:predicate sortDescriptors:@[sortDescriptor]]]; 


Visitor *visitorName; 

NSMutableArray *dataArray = [NSMutableArray array]; 

for (visitorName in fullNamesArray) { 
    NSLog(@"tus visitors:: %@", visitorName.fullName); 

    [dataArray addObject:visitorName.fullName]; 

    } 
    } 

回答

1

我沒有我的Mac在我面前的ATM,但它應該是這樣的:

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"visitors.fullName BEGINSWITH [c] %@ && visitors.CompanyName BEGINSWITH [c] %@",self.nameTF.text, companyNameTextObject]; 

希望這是100%正確的,如果沒有可以有點得到它的要點。您可以使用「table.relationshipProperty」來搜索關係。

Apple Predicate Programming Guide

有沒有一些更多的信息,只是檢查出的「聯接」一節。希望有所幫助!