在保存到核心数据之前,需要将NSArray从fetchRequest转换为对象

时间:2015-02-22 05:22:30

标签: ios swift core-data

我在两个实体之间有很多关系:"图书"和"图书馆"在核心数据中。

在我的EditBooks控制器中,我有一个填充了几个库的pickerview。我需要从该选择器中选择所选的库,并将其作为我的Books Managed Object Subclass中的relationship属性传递。

我的书与图书馆有反向关系,bookToLibrary< ----> libraryToBook。

我需要使用选择器视图中的值填充要添加或编辑的书籍的Books.bookToLibrary关系。我的fetchRequest对象用户选择的pickerview工作,并且是一个NSArray。

如何将其转换为我的Library子类的Object,以便我可以使用ManageObjectContext连接关系?

 var rowPick = supPicker.selectedRowInComponent(0)
 var choice = libraryArray[rowPick]

 var request = NSFetchRequest(entityName: "Library")
 request.returnsObjectsAsFaults = false
 let predicate = NSPredicate(format: "libraryName = %@",choice)
 request.predicate = predicate
 var libresults = self.managedObjectContext!.executeFetchRequest(request,      error: nil)!
  //libresults is a NSArray of the object I want. It works fine. I need to get that object into the bookToLibrary relationship

  // book?.bookToLibrary  = results <---results needs to be a Library object
  managedObjectContext?.save(nil)

0 个答案:

没有答案