Вопрос

Я получаю следующий вывод:

*** Terminating app due to uncaught exception 'NSUnknownKeyException', reason:
'[<NSManagedObject 0x21016610> setValue:forUndefinedKey:]: the entity MyEntity is
not key value coding-compliant for the key "aBooleanKey".'
.

Код, который работает до того, как я получаю выход, следующий:

self.name = [managedObject valueForKey:@"name"];
self.language = [managedObject valueForKey:@"language"];
self.ownerID = [managedObject valueForKey:@"ownerID"];
// the following line is the scope of the problem:
self.aBooleanKey = [[managedObject valueForKey:@"aBooleanKey"] boolValue];
.

Для меня это выглядит как опечатка или что-то, поскольку все остальные атрибуты сущности не вызывают никаких проблем.Но я проверил как двенадцать раз и не могу найти никакого цивочки или около того.Все выглядит правильно.И неделю назад все это работало просто хорошо - я ничего не изменил здесь.

Также есть несколько других мест, где я делаю вещи с генеракодицетагкодом, а также все остальные атрибуты работают просто, кроме этого.Я пытался удалить его в основном хранилище данных и выворачивать его, но он не решил проблему.

Есть ли другие причины этой ошибки?

Это было полезно?

Решение

Проблема довольно странная (иногда работает, иногда нет), поэтому я предложил бы изменить имя атрибута (например, booleanStatus) и проверить, если проблема все еще сохраняется или нет.

Поскольку вы изменили модель, вам нужно удалить приложение и Ricreate.В качестве альтернативы вы можете выполнить автоматическую миграцию на основных данных.Как вы предпочитаете.

Надеюсь, это поможет.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top