度々質問すみません。
記事のお気に入り機能を作成しており、お気に入りボタンをタップするとその記事のidがrealmに保存されているかを調べて、保存されている場合はrealm.deleteしてお気に入りから削除。保存されていなかった場合はrealm.addをしたいと考えています。以下のようなコードを書いたところ、一度削除したidを再び追加した時にAdding a deleted or invalidated object to a Realm is not permitted
と言われてしまいました。Stackoverflowに上がっている質問を読んで試してみたのですが、うまくいきませんでした。
よろしくお願いします。
swift
1if //保存されている { 2 let productToDelete = realm?.objects(RMArticle.self).filter("id == %@", (article?.id)!) 3 try! realm?.write { 4 realm?.delete(productToDelete!) 5 } 6 button.setTitle("removed", for: .normal) 7} else { 8 try! realm?.write { 9 //データベースが空の場合はcreateする 10 if (realm?.objects(RMArticle.self).isEmpty)! { 11 realm?.create(RMArticle.self) 12 // 13 } 14 realm?.add(rmArticle) 15 } 16 button.setTitle("added", for: .normal) 17}
回答2件
あなたの回答
tips
プレビュー