将CoreData属性筛选为唯一,并在UITableView上显示



你好,我的应用程序显示了按国家分组的城市(街道)列表。当我保存一条新街道时,它看起来是这样的:

Country -> USA
City-> New York
street-> timeSqaure

当我这样拯救另一条街时:

Country -> USA
City-> New York
street-> 233 street 330 west

我的TableView复制城市屏幕截图

如何将重复的城市过滤为唯一的城市。

我的提取结果是这样的:

-(void) performFetch
{
    NSFetchRequest *request = [[NSFetchRequest alloc] init];
    NSManagedObjectContext *context = [app managedObjectContext];
    NSEntityDescription *entity = [NSEntityDescription entityForName:@"Country" inManagedObjectContext:context];
    [request setEntity:entity];

    NSSortDescriptor *sort1 = [[NSSortDescriptor alloc] initWithKey:@"country" ascending:YES];
    NSArray *sortArray = [NSArray arrayWithObjects:sort1, nil];
    [request setSortDescriptors:sortArray];
    NSError *error;
    self.fetchedResultsController =[[NSFetchedResultsController alloc] initWithFetchRequest:request managedObjectContext:context sectionNameKeyPath:@"country" cacheName:nil];
    if (![self.fetchedResultsController performFetch:&error]) {
        NSLog(@"failure: %@", [error localizedDescription]);
    }
}

我解决了我的问题。我刚刚设置了另一个名为"street"的实体,该实体具有一对多关系。它的工作原理类似于魅力

最新更新