यह वास्तव में मुझे परेशान कर रहा है। उद्देश्य-सी में, मेरे पास Item
इकाई है जिसमें बूलियन विशेषता Deleted
है। मैं हां में Deleted
या 1.मैं अपने मूल डेटा इकाई की विशेषता के बूलियन मान को अपडेट क्यों नहीं कर सकता?
का मूल्य निर्धारित करने में सक्षम होना चाहते हैं यह मेरा कोड है: नोट करने के लिए
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Item" inManagedObjectContext:managedObjectContext];
[fetchRequest setEntity:entity];
NSString *itemID = [[fetchedObjects objectAtIndex:(int)[currentTable selectedRow]] valueForKey:@"ItemID"];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"ItemID = %@", itemID];
[fetchRequest setPredicate:predicate];
NSError *error = nil;
Item *objectToDelete = [[managedObjectContext executeFetchRequest:fetchRequest error:&error] objectAtIndex:0];
if (objectToDelete == nil) {
NSLog(@"ERROR");
}
[fetchRequest release];
[objectToDelete setValue:[NSNumber numberWithBool:YES] forKey:@"Deleted"];
[managedObjectContext save:&error];
कुछ है कि मैं सफलतापूर्वक अलग-अलग विशेषताओं को बदलने में सक्षम हूँ; उदाहरण के लिए: मैं Item
के गुण Code
और Name
के अंत में स्ट्रिंग-डीईएल जोड़ता हूं। जब मैं डेटा की एक तालिका देखता हूं, तो उन मानों के लिए स्ट्रिंग्स को संगत रूप से अद्यतन किया जाता है, हालांकि Deleted
के लिए मान 0
आपकी इकाई का विवरण कैसा दिखता है? क्या आप मूल अभिन्न प्रकार का उपयोग कर रहे हैं? जब आप मूल्य कॉल करते हैं तो आपको क्या मिलता है ForKey: @ "हटाया गया" –
आइटम के लिए मेरी एंटिटी हेडर फ़ाइल में NSNumber * हटाया गया है। कोर डेटा मॉडल में इसे बूलियन के रूप में सूचीबद्ध किया गया है। जब मैं valueForKey को कॉल करता हूं: चेंज करने के बाद @ "हटाया गया" इसे संपादित करें, यह "0" प्रिंट करता है। – Rail24
क्या आपकी विशेषता को क्षणिक के रूप में घोषित किया गया है? फिर, अद्यतन से पहले और बाद में लॉग स्टेटमेंट डालने का प्रयास करें। मुझे बताएं। –