2016-11-02 3 views
0

Я получаю сообщение об ошибке при попытке сохранить данные. Вот что я делаю ...Swift 3 Core Data - не может сохранить реляционное значение

1) Сначала я Fetch с помощью Категория объекта:

let categories: NSFetchRequest<Categories> = Categories.fetchRequest() 
categories.predicate = NSPredicate(format: "id==%@", '25') 
var category = try managedObjectContext.fetch(categories)[0] 

2) Тогда я установить значения на новом подкатегорий объекта:

let subcategory = NSEntityDescription.insertNewObject(forEntityName: "Subcategories", into: managedObjectContext) as! Subcategories 
subcategory.text = "Some text..." 
subcategory.categories = category 

3) Наконец я экономлю:

managedObjectContext.save() 

***** Нагрузочного приложение из-за неперехваченное исключение 'NSInvalidArgumentException', причина: "* - [__ NSPlaceholderArray initWithObjects: Кол-во:]: попытка вставить ноль объект из объектов [0]

Категория не ноль, хотя, потому что я могу напечатать его непосредственно перед сохранением. Я думаю, что есть проблема с managedObjectContext.

+0

Вы проверяли типы подкатегорий. Категории и категории? Какой тип вашей подкатегории? – nadi9

+0

Вы использовали NSManagedObjectSubclassing? – nadi9

ответ

0

Я понял. Проблемы были в категориях родительских объектов. Я проверил коробку, чтобы настроить их на «заказ», что по какой-то причине вызвало эту странную ошибку. То, что конкретно происходило, было областью категорий объекта, возвращаемого из моего запроса, всегда было nil, всегда.

Смежные вопросы