我正在使用coreData一對多關係。例如文件夾 - 文件。所以我想要做的是從一個文件夾中取出一個文件並將其複製到另一個文件夾中。CoreData一對多關係問題
So for example
folder A B
file a b
file c d
現在我想從文件夾中的文件拷貝C到文件夾B,它應該這樣看
folder A B
file a b
file c d
file c
要執行此操作,我已經在一些視圖控制器寫了這個代碼 這是發生這之後一些導航操作
首先我在這裏提取的所有文件夾
NSEntityDescription *entityDescription = [NSEntityDescription entityForName:@"Folder" inManagedObjectContext:self.managedObjectContext];
NSFetchRequest *request = [[NSFetchRequest alloc] init];
[request setEntity:entityDescription];
NSError *error = nil;
m_folderResults = [self.managedObjectContext executeFetchRequest:request error:&error];
打開
然後我創建文件的新實例
File *fileObject = [NSEntityDescription insertNewObjectForEntityForName:@"File" inManagedObjectContext:self.managedObjectContext];
fileObject = (passed file object to this ViewController)
Folder *folderObject = [m_folderResults objectAtIndex:m_indexPath.row];
NSMutableOrderedSet *files = [folderObject mutableOrderedSetValueForKey:@"file"];
[files addObject:fileObject];
這是工作,但我現在面臨的問題是,我得到它這樣
folder A B
file a b
file d
file c
這意味着它正從一個文件夾中刪除並添加到另一個文件夾。
所以我想知道我要去哪裏錯了。
問候 蘭吉特
看起來你並沒有真的在做文件複製。我在這裏看不到導致此問題的代碼。你能分享一些更多的代碼嗎? – 2013-03-14 08:12:07
難道是在'fileObject =(傳遞給這個ViewController的文件對象)'你*用新的文件對象替換你想複製的文件對象?您可能需要複製這些屬性,例如'fileObject.name = oldFileObject.name,...'。 – 2013-03-14 08:32:50
嗨@MarkKryzhanouski,實際上這是我寫了一個文件從一個文件夾複製到另一個,我沒有更多的代碼分享 – Ranjit 2013-03-14 08:45:42