У меня есть проблема, которую я не могу решить с помощью объекта Core Data.Число плавающих чисел Coredata становится нулевым
В моем сущности есть два отношения (whoHasToPay, whoHasToBePaid) и атрибут (howMuch).
Это код, в котором я вставляю запись в базе данных
Debitcredit *dc = [NSEntityDescription
insertNewObjectForEntityForName:@"Debitcredit"
inManagedObjectContext:self.context];
dc.howMuch = [NSNumber numberWithFloat:5.2f];
dc.whoHasToPay = theDebitor;
dc.whoHasToBePaid = theCreditor;
NSLog(@"%@", dc);
[self.context save:&error];
NSLog показывает
<Debitcredit: 0x151590> (entity: Debitcredit; id: 0x141570
<x-coredata:///Debitcredit/t8DC4691F-5DE3-42D5-8095-C2D5D3264C8D2> ; data: {
howMuch = "5.2";
whoHasToBePaid = "0x140c50 <x-coredata://C25DC4FE-B46B-402C-B513-A2A83C6A9F86/Users/p1>";
whoHasToPay = "0x14c280 <x-coredata://C25DC4FE-B46B-402C-B513-A2A83C6A9F86/Users/p2>";
})
поэтому значение howMuch
кажется правильным.
Однако, когда я называю его снова
fetchRequestCount = [[NSFetchRequest alloc] init];
entityCount = [NSEntityDescription entityForName:@"Debitcredit"
inManagedObjectContext:self.context];
[fetchRequestCount setEntity:entityCount];
fetchedObjectsCount = [self.context executeFetchRequest:fetchRequestCount error:&error];
for (Debitcredit *dc in fetchedObjectsCount) {
NSLog(@"%f", [dc valueForKey:@"howMuch"]);
NSLog(@"%@", [[dc valueForKey:@"whoHasToPay"] name]);
NSLog(@"%@", [[dc valueForKey:@"whoHasToBePaid"] name]);
}
[fetchRequestCount release];
NSLog показывает
2010-12-05 01:47:04.636 myApp[6179:307] 0.000000
2010-12-05 01:47:04.642 myApp[6179:307] John
2010-12-05 01:47:04.646 myApp[6179:307] Jack
Кажется, что howMuch
становится равным нулю. Зачем? Я ошибаюсь?
Спасибо, теперь это работает! – 2010-12-05 02:22:49