Базовые данные: получить записи, в которых доступно более одного объекта. - PullRequest
0 голосов
/ 05 марта 2019

У меня есть одна категория сущностей, которая может содержать подкатегории одного типа, поэтому я хочу, чтобы были доступны только те категории, у которых доступно более 1 подкатегории.

Вот схема сущности.Schema

Вот мой код для получения подробной информации.

func getAllCategory() -> [TestCategory] {
    let fetchRequest = NSFetchRequest<Category>(entityName: "\(Category.self)")
    fetchRequest.includesSubentities = true
    fetchRequest.predicate = NSPredicate.init(format: "%K.count > %i","childCategories",0)
    do {
        let results = try self.getCurrentContext().fetch(fetchRequest)
    } catch  {
    }
}

Вот ошибка, которую я получаю.

CoreData: error: SQLCore dispatchRequest: exception handling request: <NSSQLFetchRequestContext: 0x600000a34a80> , to-many key not allowed here with userInfo of (null)

Спасибо

1 Ответ

0 голосов
/ 05 марта 2019

Я не уверен, но кажется, что у вас слишком много отношений со многими.Кажется, у ваших childCategories есть несколько родительских категорий.У меня была эта проблема раньше.Установка отношений соотв.Назначение и сборка снова (позволяя Xcode создавать необходимые файлы) помогли мне.

...