【发布时间】:2012-03-05 14:56:35
【问题描述】:
这是一个简单的问题,但我找不到答案。
我正在构建一个应用程序,用于存储有关项目和人员的数据,这些数据使用 Core Data 存储在 SQLite 数据库中。
一个项目可以有很多人,但是一个人只能分配给一个项目。我在表格视图中显示数据,此时,每当您查看任何项目时,它都会显示存储在数据库中的所有人员 - 这并不理想。
我只想显示参与该项目的人。我将如何以编程方式进行?这是使用过滤完成的吗?例如:
- (void)setupFetchedResultsController
{
// 1 - Decide what Entity you want
NSString *entityName = @"People"; // Put your entity name here
NSLog(@"Setting up a Fetched Results Controller for the Entity named %@", entityName);
// 2 - Request that Entity
NSFetchRequest *request = [NSFetchRequest fetchRequestWithEntityName:entityName];
// 3 - Filter it if you want
//request.predicate = [NSPredicate predicateWithFormat:@"people.name = someones name"];
// 4 - Sort it if you want
request.sortDescriptors = [NSArray arrayWithObject:[NSSortDescriptor sortDescriptorWithKey:@"lastName"
ascending:YES
selector:@selector(localizedCaseInsensitiveCompare:)]];
// 5 - Fetch it
self.fetchedResultsController = [[NSFetchedResultsController alloc] initWithFetchRequest:request
managedObjectContext:self.managedObjectContext
sectionNameKeyPath:nil
cacheName:nil];
[self performFetch];
}
【问题讨论】:
标签: iphone objective-c ios uitableview core-data