相关疑难解决方法(0)

如何在Swift中定义CoreData关系?

在CoreData,我已经定义了从无序到一对多的关系NodeTag.我已经创建了一个像这样的Swift实体:

import CoreData
class Node : NSManagedObject {
    @NSManaged var tags : Array<Tag>
}
Run Code Online (Sandbox Code Playgroud)

现在我想添加一个Tag实例Node,如下所示:

var node = NSEntityDescription.insertNewObjectForEntityForName("Node", inManagedObjectContext: managedObjectContext) as Node
node.tags.append(tag)
Run Code Online (Sandbox Code Playgroud)

但是,这失败并出现以下错误:

由于未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:'to-many relationship的值不可接受的类型:property ="tags"; 期望的类型= NSSet ; 给定type = _TtCSs22ContiguousArrayStorage000000000B3440D4; value =("<_TtC8MotorNav3Tag:0xb3437b0>(entity:Tag; id:0xb343800; data:{...})").'

多对多关系的正确类型是什么?

core-data swift ios8

12
推荐指数
3
解决办法
1万
查看次数

标签 统计

core-data ×1

ios8 ×1

swift ×1