我有一個簡單的核心數據問題。核心數據簡單一對一的關係
我建立了一個員工實體和一個employeeDetails實體。兩者都有指向另一方的關係以形成簡單的一對一關係。每位員工都有一名員工詳細信息。
我能夠存儲新員工並在需要時取回他們。我的問題是,如何在存儲員工的同時存儲匹配的employeeDetails,以及如何在提取中檢索匹配員工的詳細信息?
感謝您提供的任何幫助。
我有一個簡單的核心數據問題。核心數據簡單一對一的關係
我建立了一個員工實體和一個employeeDetails實體。兩者都有指向另一方的關係以形成簡單的一對一關係。每位員工都有一名員工詳細信息。
我能夠存儲新員工並在需要時取回他們。我的問題是,如何在存儲員工的同時存儲匹配的employeeDetails,以及如何在提取中檢索匹配員工的詳細信息?
感謝您提供的任何幫助。
我通過再生的實體類解決我的問題,核心數據將增加代表的關係的動態變量。當我存儲實體時,我創建了一個Employee和EmployeeDetails對象,並將員工詳細信息字段(由核心數據動態管理)指向我的EmployeeDetails對象。
- (void)addEmployee :(NSDictionary *)_employee {
// Create a new instance of the Employee entity.
Employee *employee = (Employee *)[NSEntityDescription insertNewObjectForEntityForName:@"Employee" inManagedObjectContext:managedObjectContext];
EmployeeDetails *employeeDetails = (EmployeeDetails *)[NSEntityDescription insertNewObjectForEntityForName:@"EmployeeDetails" inManagedObjectContext:managedObjectContext];
// Add the new employee
employee.firstName = [_employee objectForKey:@"first_name"];;
employee.lastName = [_employee objectForKey:@"last_name"];;
/* --> */ employee.details = employeeDetails; // Associate with details object
// Add details
employeeDetails.address = [self getValue:[e objectForKey:@"street_address"]];
employeeDetails.cellPh = [self getValue:[e objectForKey:@"cell"]];
// Save the data
NSError *error;
if (![managedObjectContext save:&error]) {
NSLog(@"core date save error: %@", error);
}
}
如果你總是有一個employeeDetail,它是1:1,爲什麼它是一個單獨的實體? – Stu
因爲我在內存中保留了一大組員工數據,只有在點擊員工行才能查看詳細信息時才需要訪問詳細信息。 – RickR