iPhone CoreData. Прикольная запрос на выборку. Я хочу создать функцию для получения массива уникальных категорий кодов для моих продуктов. У меня есть объект «Продукт» и есть поле (Свойство) Категория.Конечно, категория - это отношение к объекту категорий.
Это если моя функция:
- (NSArray *)uniqueCategoriesWithQuery:(NSString *)query {
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Product" inManagedObjectContext:[self managedObjectContext]];
NSDictionary *entityProperties = [entity propertiesByName];
NSFetchRequest *request = [[NSFetchRequest alloc] init];
[request setEntity:entity];
[request setReturnsDistinctResults:YES];
[request setPropertiesToFetch:[NSArray arrayWithObject:[entityProperties objectForKey:@"Code"]]];
[request setResultType:NSDictionaryResultType];
[request setIncludesSubentities:YES];
[request setIncludesPropertyValues:YES];
NSError *fetchError = nil;
NSArray *result = [[self managedObjectContext] executeFetchRequest:request error:&fetchError];
DebugLog(@"%@", result);
if (fetchError == nil && [result count] > 0) {
return result;
}
return nil;
}
MyResult: 2010-12-10 05: 55: 33.683iApp [3453: 307] - [ShoppingHelper uniqueCategoriesWithQuery:] [Строка 1193] ({Category = "0x495a200";}, {Category = "0x4959ce0";})
Код работает хорошо, но я не могу использовать результатысовсем.У меня есть мои категории ... но ID 'вместо NSStrings .. Как использовать это?
может быть, я должен использовать: [запрос setPropertiesToFetch: [NSArray arrayWithObject: [entityProperties objectForKey: @ "Categories.Code"]]];
, чтобы получить строки NSS в отличительном NSDictionary?
ИЛИ
найти идентификатор категории BY - Как это сделать?