NSFetchRequest, когда вызов возвращает несколько коллекций
Я пытаюсь настроить RestKit для удаления потерянных объектов, которые не существуют на сервере, но все еще существуют в локальном кэше, используя NSFetchRequest
как описано в документации для RKManagedObjectRequestOperation
,
Если у меня есть вызов, который возвращает несколько коллекций различных типов объектов, каждый из которых сопоставлен с использованием ключей, достаточно ли умный RestKit, чтобы справиться с этим? Или это будет работать только на вызовы, которые возвращают объекты одного типа? Например:
URL: /users?accessToken=someToken
Отклик:
{
users: [],
collection1: [],
collection2: [],
collection3: []
}
Тип объекта, хранящегося в каждой коллекции, - это отдельная сущность в моей модели данных. Как я могу написать NSFetchRequest, который позволит мне удалять объекты из локального кэша, которые больше не находятся в collection1
, collection2
, или же collection3
?
1 ответ
Это так умно, как вы делаете, но, как вы можете видеть из подписи документов / блоков, вам нужно иметь некоторую информацию в URL (или в ранее отображенном содержимом в хранилище данных), которая позволяет вам решать, что делать,
Если вся ваша информация находится в теле ответа JSON, то использование блока запроса выборки может не сработать для вас, и вам может потребоваться выполнить ваши собственные выборку и удаление вместо результата сопоставления (который будет выполняться после сохранения контекста вместо до)