Я пытаюсь создать систему кеширования для приложения чтения фида. Идея заключается в том, что каждый новый канал успешно извлекается, удаляет все сохраненные объекты в Core Data и сохраняет первые двадцать элементов фида (это используется как автономный кеш).Как удалить только объекты, сохраненные для хранения из Core Data?
Проблема, с которой я столкнулся, - это мой контекст управляемого объекта, который может иметь сотни элементов в нем, когда выполняется попытка обновления. Я хотел бы сохранить эти элементы в контексте при удалении любых сохраненных элементов из Core Data, а затем сохранить двадцать элементов, возвращенных из вызова обновления.
Для чего это стоит, я использую магическую запись. Я попытался оглядеться вокруг этого решения, но либо я использую неправильные ключевые слова, либо информация трудно найти.
Я не уверен, что код, чтобы показать точно, но вот обработка вызова подачи:
for (id dict in feedArray){
WFeedItem *item = [WFeedItem feedItemWithAttributes:[dict dictionaryByReplacingNullsWithBlanks] inManagedObjectContext:[NSManagedObjectContext defaultContext]];
[parsedArray addObject:item];
}
Это получает передается обратно из подклассов HTTPClient это определено в к контроллеру вида, который назвал его , Имейте в виду, что все это прекрасно работает, все дело в том, чтобы удалять сохраненные элементы, сохраняя все, что я собрал во время этого сеанса в контексте.
Спасибо,
-Brandon
Можно ли использовать другой контекст для извлечения только элементов, уже сохраненных в магазине? Проблема, которую я испытываю при сохранении, заключается в том, что мне нужно удалить то, что уже существует, не затрагивая NSManagedObjects из сеанса. Вероятно, некоторые из новых элементов из вызова канала уже существуют в магазине, но мне нужно убедиться, что в магазине всегда есть двадцать последних элементов ... не уверен, что я достаточно хорошо объясню это. – Stakenborg
Это то, что я сделал. В принципе, я не хотел, чтобы один контекст видел то, что было сохранено, по сути, но так как этого не могло произойти, я только первые двадцать пунктов моего мокрого по умолчанию и сохранил его, а затем оставил остальные мои объекты в nil moc. – Stakenborg