जब मैं अपने CoreData मॉडल के संदर्भ बचाने के प्रयास में, मैं एक त्रुटि प्राप्तCoreData संदर्भ बचाने के लिए करते हुए कहा कि संबंध नहीं के बराबर है विफल रहता है - लेकिन यह निश्चित रूप से सेट किया गया है
Unresolved error Error Domain=NSCocoaErrorDomain Code=1560 "The operation couldn’t be completed. (Cocoa error 1560.)" UserInfo=0x76924b0 {NSDetailedErrors=( "Error Domain=NSCocoaErrorDomain Code=1570 " The operation couldn\U2019t be completed. (Cocoa error 1570.)" UserInfo=0x768c410 {NSValidationErrorObject=<Posts: 0x7177990> (entity: Posts; id: 0x7177010 <x-coredata:///Posts/tEF7138E6-A968-45B7-95CF-116C2AA93D605> ; data: {\n " business_entity" = nil;\n "
created_at" = " 2012-01-21 03:31:30 +0000" ;\n " own_description" = " Roasted this morning- Panama Duncan Estate: A rose fragrance debuts flavors of pear, coconut and marshmallow with caramel throughout the cup." ;\n postsID = 4;\n " updated_at" = " 2012-01-21 03:31:30 +0000" ;\n}), NSValidationErrorKey=business_entity, NSLocalizedDescription=The operation couldn\U2019t be completed. (Cocoa error 1570.)}",
कुंजी हिस्सा होने के नाते:
:business_entity = nil;
NSValidationErrorKey=business_entity
हालांकि जब मैं अपने "पोस्ट" वस्तु बनाने मैं उन्हें है कि इस तरह सेट 210
// First try to find a business for the post
NSNumber* businessID = [NSNumber numberWithInteger: [(NSString*)[jsonInfo objectForKey:@"business_id"] integerValue]];
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
[fetchRequest setEntity: [NSEntityDescription entityForName:kCoreDataModelNameBusinesses inManagedObjectContext: self.managedObjectContext]];
[fetchRequest setPredicate: [NSPredicate predicateWithFormat:@"(businessesID == %i)", [businessID intValue]]];
NSError *error = nil;
NSArray *matchingManagedObjects = [__managedObjectContext executeFetchRequest:fetchRequest error:&error];
if(error) {
NSLog(@"Error-createNewPostsWithJsonInfo: Unresolved error %@, %@", error, [error userInfo]);
return;
}
// Check any results
if([matchingManagedObjects count] == 0) {
NSLog(@"Error-createNewPostsWithJsonInfo: Could not locate a matching businessId: %@ for postId:%@", businessID, (NSString*)[jsonInfo objectForKey:@"id"]);
}
// Check too many results
if([matchingManagedObjects count] > 1) {
NSLog(@"Error-createNewPostsWithJsonInfo: Too many bussinesses match businessId: %@ for postId:%@", businessID, (NSString*)[jsonInfo objectForKey:@"id"]);
}
// Final sanity check outputs fine!!
NSLog(@"Business entity %@", (Businesses*)[matchingManagedObjects objectAtIndex:0]);
// Finally create the post
Posts* newPosts = [NSEntityDescription
insertNewObjectForEntityForName:entityName inManagedObjectContext:self.managedObjectContext];
newPosts.created_at = [_dateFormater dateFromString: [jsonInfo objectForKey:@"created_at"] ];
newPosts.updated_at = [_dateFormater dateFromString: [jsonInfo objectForKey:@"updated_at"] ];
newPosts.own_description = [jsonInfo objectForKey:@"description"];
newPosts.postsID = [NSNumber numberWithInteger: [(NSString*)[jsonInfo objectForKey:@"id"] integerValue]];
[newPosts setBusiness_entity: (Businesses*)[matchingManagedObjects objectAtIndex:0] ];
तो मुझे पता है कि business_entity सेट किया जा रहा है, और सही है। इस तरह के परिदृश्य में संदर्भ सहेजते समय त्रुटि देने का क्या कारण होगा?
यहाँ मॉडल है कि यदि मदद करता है:
व्यवसाय_entity एक रिश्ते या संपत्ति है> – jackslash
यह एक रिश्ता है - – Onedayitwillmake