Я пытаюсь реализовать геттер на одном из моих классов БД.Но когда я выполняю следующую строку кода, где "obj" - это NSManagedObject:
return [obj valueForKey:@"activationData"];
, я получаю следующее исключение NSUnknownKeyException:
'[valueForUndefinedKey:]: объектный чертеж не являетсязначение ключа, совместимое с кодировкой для ключа "activData". '
Я только недавно добавил атрибут String с именем "activData" в свою сущность "Blueprint", используя Xcode.Но когда я запускаю приложение, NSManagedObject, представляющий сущности Blueprint, не включает новый атрибут «activData», который, очевидно, является причиной сбоя.
NSManagedObject выглядит следующим образом, но я ожидал, что он покажетновый атрибут вместе с атрибутами createDate, name и order:
<NSManagedObject: 0x5138c90> (entity: Blueprint; id: 0x513a2e0 <x-coredata://8C586BB8-B9E7-4FD7-84CB-5CE66FB221E6/Blueprint/p2> ; data: {
createDate = "2012-02-21 15:49:00 +0000";
name = "Feb 17 test";
order = 2;
})
Fyi, ответ пользователя user1226119 (ниже) напомнил мне, что я использовал Organizer, чтобы извлечь базу данных sqlite из моего устройства и проверить ее с помощью SQLite Manager, чтобыпроверить вещи.Конечно же, в таблице Blueprint все еще нет нового поля activData.Таблица выглядит так же, как и всегда.
Я думаю, что, должно быть, пропустил какой-то необходимый шаг для добавления нового атрибута в существующую сущность БД.