Базовая причина Отношений Данных сохраняет ошибку после того, как удалят

Весь Python встроенные константы использован для своей выгоды или [верхний] CamelCase:

23
задан double-beep 11 June 2019 в 16:56
поделиться

4 ответа

Я не могу отметить это как решенное, потому что я действительно не решал его, но у меня есть рабочий обходной путь. В .m для каждого из моих управляемых объектов я добавил метод, который выглядит примерно так:

-(void) deleteFromManangedObjectContext{ 
   self.outfit = nil; 
   self.article = nil; 
   [[self managedObjectContext] deleteObject:self]; 
} 

Итак, вы можете видеть, сначала я вручную обнуляю отношения, а затем удаляю сам объект. В других объектах вместо nil мой метод удаления вызывается для некоторых отношений объектов, чтобы получить каскад.

Меня все еще интересует «правильный» ответ. Но это лучшее решение, которое у меня есть, и оно позволяет детально контролировать, как удаляются мои отношения.

3
ответ дан 29 November 2019 в 03:04
поделиться

Проверьте свой файл xcdatamodel на наличие правила удаления Запретить . Щелкайте по каждой взаимосвязи, пока не найдете ее. Вам нужно будет изменить это правило или настроить способ удаления управляемых объектов, чтобы предвидеть применение правила в отношении.

2
ответ дан 29 November 2019 в 03:04
поделиться

I had a similar problem where it turned out the problem was in the .xib file. When I switched on the check box for "Deletes Objects on Remove" (under Bindings->Content Set) of the relevant Array Controller, the problem went away.

Don't know if this will help in your case, but I've had a lot of hairs go gray over problems that turned out be hidden away somewhere inside Interface Builder.

0
ответ дан 29 November 2019 в 03:04
поделиться

Ты, случайно, сам не реализовываешь часть аксессуара к отношениям? Однажды у меня был код типа

-(NSSet*)articles
{
       re-calculates properties....
       return [self primitiveValueForKey:@"articles"];
}

в подклассе NSManagedObject и у меня была ошибка сохранения. Случилось так, что когда этот объект удаляется из ManagedObjectContext, CoreData вызывает аксессора "статьями" для работы с распространением удаления. Этот перерасчет статей произошел во время распространения удаления, что в моем случае переустранило нулевую "статьи".

3
ответ дан 29 November 2019 в 03:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: