Атрибут номера установки проблемы в Базовых данных - PullRequest
0 голосов
/ 13 мая 2011

У меня есть сущность "Элемент" в базовых данных.Предмет имеет два атрибута: имя и номер.имя - это NSString *, а число - это NSNumber *.Я указал "Integer 32" в качестве типа числа в инструменте моделирования Core Data.Следующий код задает имя правильно, но не номер:

Item *item = (Item *) [NSEntityDescription insertNewObjectForEntityForName:@"Item"
                       inManagedObjectContext:managedObjectContext]; 

[item setName:@"test name"];
[item setNumber:[NSNumber numberWithInteger:123]];

В логе card.name отображается «имя теста», как и ожидалось.Журнал card.number показывает большое случайное число.Я ожидал 123, потому что это то, что я передал numberWithInteger.

Почему атрибут номера установлен неправильно?

Несколько замечаний:

  • Я создал класс Item, выбрав объект «Item» в инструменте моделирования и добавив новый «Класс управляемых объектов».Это создало свойства и т.д. для меня.

1 Ответ

0 голосов
/ 13 мая 2011

Это была проблема с журналированием:

NSLog([NSString stringWithFormat:@"%d", item.number]);

должно быть

NSLog([NSString stringWithFormat:@"%@", item.number]);

(пришлось изменить% d на% @)

...