0
我想獲取以給定字符串開頭的所有項目。
下面的代碼返回數千個項目,當我做不是使用謂詞,但是當它存在時,我得到零記錄返回。
我已經測試過的字段名稱和術語確實存在於sqlite數據庫中。獲取以給定字符串開頭的所有項目
NSManagedObjectContext *context = [[DataSource sharedInstance] managedObjectContext];
NSEntityDescription *entityDesc = [NSEntityDescription entityForName:@"Event" inManagedObjectContext:context];
NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"startTime" ascending:YES];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"(%@ beginswith %@)", fieldName, searchTerm, nil];
NSFetchRequest *request = [[NSFetchRequest alloc] init];
[request setEntity:entityDesc];
[request setPredicate:predicate];
[request setSortDescriptors:[NSArray arrayWithObject:sortDescriptor]];
NSError *error = nil;
NSArray *objects = [context executeFetchRequest:request error:&error];
[request release];
return objects;
解決
下解決了這個問題:是有錯誤的報價包裝紙
NSString *str = [NSString stringWithFormat:@"%@ beginswith \"%@\"", fieldName, titleTerm];
NSPredicate *predicate = [NSPredicate predicateWithFormat:str];
內容。