xcode swift 4实体之间的核心数据关系?

时间:2017-10-06 08:50:06

标签: swift xcode core-data entities

我正在尝试在2 entities之间创建关系实体,不幸的是,由于我还是swift的新手,因此效果不佳。

例如我有playlist表和songs表我想在它们之间建立关系吗?

enter image description here

这是获取请求:

let fetchRequest = NSFetchRequest(entityName: "Playlist")

//        // Add Sort Descriptor
//        let sortDescriptor = NSSortDescriptor(key: "playlist_name", ascending: true)               
//        fetchRequest.sortDescriptors = [sortDescriptor]


        let context = Appdelegate().managedObjectContext

        // Execute Fetch Request
        do {
            let result = try context.executeFetchRequest(fetchRequest)
            print(result)
        } catch {
            let fetchError = error as NSError
            print(fetchError)
        }

我可以创建第三个表来制作这样的歌曲和播放列表之间的关系吗?

enter image description here

1 个答案:

答案 0 :(得分:0)

您需要在Core Data模型编辑器中创建关系。如果使用窗口底部的控件将其切换到表格模式,则使用模型编辑器会更容易:

enter image description here

当你这样做时,窗口的主要部分将如下所示:

enter image description here

点击" +"关系部分中的按钮可添加关系。填写目标实体并确保创建反向关系。

您应创建第三个表来创建关系。这是您在SQL中执行的操作,但在大多数情况下不在Core Data中执行。

您可能还想查看relationships section of Apple's Core Data Programming Guide