核心数据[NSSet intersectsSet:]:set参数不是NSSet

时间:2015-10-09 11:39:11

标签: swift core-data swift2

我有两张关系表。

enter image description here

在尝试保存产品的ShopItem类中:

let productEntity = NSEntityDescription.entityForName("Product", inManagedObjectContext: self.managedObjectContext!)
                    product = Product(entity: productEntity!, insertIntoManagedObjectContext: self.managedObjectContext!)

if let product_title:String = jsonObj["product_title"] as? String {
                        product.setValue(product_title, forKey: "product_title")
                    } else {
                        product.setValue("", forKey: "product_title")
                    }

                    product.setValue(self, forKey: "shopitem")
                    do {
                        try self.managedObjectContext!.save()
                    } catch {
                        fatalError("Failure to save context: \(error)")
                    }

jsonObj - 这是来自服务器的json响应。

并收到错误:

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[NSSet intersectsSet:]: set argument is not an NSSet' 

1 个答案:

答案 0 :(得分:3)

我通过向班级添加@objc(Product)解决了问题。

@objc(Product)
class Product: NSManagedObject {
    ...
}

任何人都可以解释这是什么意思吗?