2017-01-24 8 views
1

私は、ユーザがいくつかの項目を含むリストを作成することができるアプリケーションを開発しています。私のCoreDataモデルは以下の通りです。セットでCoreDataのエンティティの更新と編集

enter image description here

以下のコードlist.contains関係を取得し、itemsOnList設定として保存し、各項目でのUITableViewを移入

func getItemsOnList(){ 

    let app = UIApplication.shared.delegate as! AppDelegate 
    let context = app.persistentContainer.viewContext 

    //fetchRequest to get the List 
    let fetchRequest = NSFetchRequest<NSFetchRequestResult>(entityName: "List") 
    let predicate = NSPredicate(format: "title == %@", listName) 
    fetchRequest.returnsObjectsAsFaults = false 
    fetchRequest.predicate = predicate 

    if let fetchResults = try? context.fetch(fetchRequest){ 
     if fetchResults.count > 0 { 
      for listEntity in fetchResults { 
       let list = listEntity as! List 
       print(list.title as Any) 
       itemsOnListSet = list.contains! 
      } 
     } 
    } 
} 

私は、ユーザーが変更できるようにしたいですアイテムの名前または数量。

私はすでにNSSetを持っているので、私はちょうど私が欲しいアイテムを変更して、新しいリストで古いlist.containsを保存するからです。

これを行うには賢明な方法でしょうか、これを行う簡単で簡単な方法がありますか? items

おかげ

答えて

2

名前の変更containsので、それはそれが何であるかを説明します。 belongsTolist

リストにリンクされた項目にアクセスするには、それはちょうどlist.itemsになります。

これで、アイテムを編集してそのセットから取り出して編集したい場合、関係は変更されません。アイテムを追加または削除する場合は、もう一度list.itemsに触れる必要があります。

関連する問題