Search code examples
objective-ccore-datamodalviewcontroller

ModalViewController doesn't save to core data?


iPad app fans:

I've got a modalviewcontroller designed to popup on a button tap so users can add notes or change data inputs. A table in the main window needs to be refreshed as changes to the database are made. The database incorporates a kind of advanced bookmark. I can create and delete database entries based on where users browse - no problem: I get the console report "saveContext KQVC line 203" and entries are quickly added into the table.

The modalviewcontroller even pops (on tapping the blue (>) detail icon also in each cell) with populated data of existing records. However the save button on the modalviewcontroller just doesn't save. (the delete function works great). Here's my code for the modalviewcontroller save button:

#import "PatternViewController.h"
#import "KnittingQueenViewController.h"

 @implementation PatternViewController
 @dynamic patternName, patternNotes, patternUrl, dateAdded;
 @synthesize patternA, patternView, knittingQueenViewController;

-(IBAction)save {
    [patternA setValue:patternName.text forKey:@"patternName"];
    [patternA setValue:patternUrl.text forKey:@"patternUrl"];
    [patternA setValue:patternNotes.text forKey:@"patternNotes"];
    dateAdded = [NSDate date];
    [patternA setValue:dateAdded forKey:@"dateAdded"];
    [patternA setValue:patternLabel.text forKey:@"patternLabel"];
    [patternA setValue:pngPath forKey:@"patternPhoto"];   

    [knittingQueenViewController saveContext];
    [self dismissModalViewControllerAnimated:YES];
}

and the saveContext method in the knittingqueenviewcontroller:

- (void)saveContext {
    NSManagedObjectContext *context = [self.fetchedResultsController managedObjectContext]; 
    NSError *error = nil;
    if (![context save:&error]) {
         // error code goes in here
    }
    NSLog(@"saveContext KQVC line 203");
    [self refreshPatternsTable];
}

I get no errors, but no saved data either. My question: why isn't the method saveContext being called from the modalviewcontroller? Any suggestions you can offer would be most appreciated.


Solution

  • Is your save method being called? Is knittingQueenViewController non-nil when it's called? Do the values of patternA look correct?