1
У меня есть 2 объекта: Сообщение & Категория, Почтовое сущность имеет отношение к одному с категорией, каждое сообщение имеет одну категорию.iOS Core Data NSFetchRequest groupby объект отношений
Post Category ---- -------- postId categoryId title title slug slug category ----> posts
Что мне нужно, это NSFetchRequest, чтобы получать сообщения по дате, а затем группировать категории.
так результат будет что-то вроде:
Category1: - Post 1 - Post 2
Category 2: - Post 3 - Post 4
я пробовал:
[_fetchRequest setPropertiesToGroupBy:[NSArray arrayWithObjects:@"category.categoryId", nil]];
и:
[_fetchRequest setPropertiesToGroupBy:[NSArray arrayWithObjects:@"category", nil]];
без успеха. Какие-либо предложения ?
Спасибо.
Я попытался, что, давая мне аварию: *** Нагрузочных приложение из-за неперехваченное исключения NSInvalidArgumentException, причина: SELECT положения в запросах с GROUP BY компонентов может содержать только свойства, указанные в функциях GROUP BY или aggregate ((), имя __af_resourceIdentifier, isOptional 1, isTransient 0, entity Post, renamingIdentifier __af_resourceIdentifier, предикаты проверки ( ), предупреждения ( ), версияHashModifier (null) userInfo { }, attributeType 700, attributeValueClassName NSString, defaultValue (null) не находится в GROUP BY) –
Haitham
im, используя AFIncrementalStore, который вставляет атрибут, упомянутый выше '__af_resourceIdentifier', который вызывает сбой – Haitham
Извините, просто прочитайте свой вопрос более тщательно, возможно, что вы хочу здесь не groupby, а порядок, т. е. сортировать свой пост по категориямId, и затем вы можете перебирать их, чтобы разбить его на группы. Самый простой способ сделать это, что я могу сейчас написать, - добавить поле категорииId в Post Entity и соответственно установить sortDescriptors. – djshiow