我有使用CoreData的問題。CoreData在添加與關係的新實體時崩潰
我有以下型號:
實體:圖書館有很多書 實體的關係:書到一個圖書館
我想補充一本書的關係,當我設置其與圖書館的關係,應用程序崩潰。
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?
}
Pablo,這是一個好主意,重新發布這個問題,並正確地重新上傳屏幕截圖。 –
你確定你已經聲明'library'是一對多的關係,而不是多對一或多對多的? –
設置其關係後,刪除應用程序,清理並構建項目。 – Himanshu