CoreDataを使用する際に問題があります。関係が新しいエンティティを追加中にCoreDataがクラッシュする
私は次のモデルがあります:私は本を追加しようとするとき、私はそのを設定しています1つのライブラリに
を関係で予約:
エンティティ:多くの書籍 エンティティに関係してライブラリをライブラリとの関係で、アプリケーションがクラッシュします。
import UIKit
import CoreData
class ViewController: UIViewController {
var library: Library!
override func viewDidLoad() {
super.viewDidLoad()
addCheckIt("", author: "")
}
func addCheckIt(title: String, author: String) {
let context = (UIApplication.sharedApplication().delegate as! AppDelegate).managedObjectContext
let bookDescription = NSEntityDescription.entityForName("Book", inManagedObjectContext: context)
let myBook = Book(entity: bookDescription!, insertIntoManagedObjectContext: context)
myBook.title = title
myBook.author = author
myBook.library = library
do {
try context.save()
} catch let err as NSError {
print(err.debugDescription)
}
}
}
myBook.library = libraryでクラッシュします。次に、このエラーが発生します:
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[NSSet intersectsSet:]: set argument is not an NSSet'
私は何時間も検索しましたが解決策が見つからないので、助けてください。
extension Library {
@NSManaged var name: String?
@NSManaged var books: NSSet?
}
extension Book {
@NSManaged var author: String?
@NSManaged var title: String?
@NSManaged var library: Library?
}
パブロ、この質問を再投稿し、スクリーンショットを適切に再アップロードすることをお勧めします。 –
'ライブラリ'は多対1の関係であり、多対1の関係や多対多の関係ではないと確信していますか? –
関係を設定した後でアプリケーションを削除し、クリーンアップしてからプロジェクトをビルドします。 – Himanshu