Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Jun 9th, 2012  |  syntax: None  |  size: 1.94 KB  |  hits: 21  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. Xcode4 Core Data Relationships
  2. // test/learn the core data frame work
  3. NSManagedObjectContext *context = [self managedObjectContext];
  4. NSManagedObject *locationData = [NSEntityDescription
  5.                                    insertNewObjectForEntityForName:@"LocationData"
  6.                                    inManagedObjectContext:context];
  7. [locationData setValue:@"Testville" forKey:@"City"];
  8. [locationData setValue:@"United Tests" forKey:@"Country"];
  9. [locationData setValue:@"County of Test" forKey:@"County"];
  10. NSManagedObject *zipCodeData = [NSEntityDescription
  11.                                       insertNewObjectForEntityForName:@"ZipCodeData"
  12.                                       inManagedObjectContext:context];
  13. [zipCodeData setValue:[NSNumber numberWithDouble:1111.00] forKey:@"Income"];
  14. [zipCodeData setValue:[NSNumber numberWithDouble:22.00] forKey:@"LandArea"];
  15. [zipCodeData setValue:@"23060" forKey:@"ZipCode"];
  16. NSError *error;
  17. if (![context save:&error]) {
  18.     NSLog(@"Whoops, couldn't save: %@", [error localizedDescription]);
  19. }
  20.  
  21. NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
  22. NSEntityDescription *entity = [NSEntityDescription
  23.                                entityForName:@"CrossReference" inManagedObjectContext:context];
  24. [fetchRequest setEntity:entity];
  25. NSArray *fetchedObjects = [context executeFetchRequest:fetchRequest error:&error];
  26. for (NSManagedObject *info in fetchedObjects) {
  27.     NSLog(@"LocationId: %@", [info valueForKey:@"LocationDataId"]);
  28.     NSManagedObject *details = [info valueForKey:@"details"];
  29.     NSLog(@"ZipId: %@", [details valueForKey:@"ZipCodeDataId"]);
  30. }        
  31. [fetchRequest release];
  32.        
  33. NSManagedObject *crossReference = [NSEntityDescription
  34.                                    insertNewObjectForEntityForName:@"CrossReference"
  35.                                    inManagedObjectContext:context];    
  36.   [crossReference setValue:locationData forKey:@"location"];
  37.   [crossReference setValue:zipCodeData forKey:@"zipCode"];