swift - 核心数据 [NSSet intersectsSet :]: set argument is not an NSSet

标签 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' 

最佳答案

我通过将 @objc(Product) 添加到我的类中解决了问题。

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

谁能解释一下这是什么意思?

关于swift - 核心数据 [NSSet intersectsSet :]: set argument is not an NSSet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33037346/

相关文章:

ios - 无法对推送通知自定义按钮执行操作

ios - 使自定义单元格 100% 透明

ios - 无法将 GoogleMaps 导入 Xcode 7 中的框架

xcode - 在编译时检查 iOS10 或更低版本

ios - 如何动态调整scrollview高度

swift - NSUserDefaults 的特殊字典

swift - 如何在导航栏下方添加 ImageView 填充?

swift - 保存核心数据属性时将索引从0移动到1

iphone - UIManagedDocuments 什么时候关闭?

iphone - 如何正确处理 iPhone 上的 Core Data 保存错误和用户体验?