【问题标题】:Swift: CoreData and an object with a ArraySwift:CoreData 和一个带有数组的对象
【发布时间】:2014-12-12 16:26:35
【问题描述】:

我有一个名为“aProject”的 Swift 类。我怎样才能把它转换成一个核心数据对象——我被属性“剪辑”困住了——一个数组。

class aProject = {
    var name: string!
    var id: Int32
    var clips : array <String> = []
} 

【问题讨论】:

  • 使其成为可转换类型或创建新实体并与某些 Clip 模型建立许多关系。

标签: arrays core-data swift


【解决方案1】:
//  Project.swift

import Foundation
import CoreData

class Project: NSManagedObject {

    @NSManaged var name: NSNumber
    @NSManaged var id: String
    @NSManaged var clips: NSSet

}

//  Clip.swift

import Foundation
import CoreData

class Clip: NSManagedObject {

    @NSManaged var name: String
    @NSManaged var id: NSNumber
    @NSManaged var projects: NSSet

}

您的 NSManagedObjectSubclasses 应该如下所示。您需要使用剪辑实体和项目实体创建关系数据模型,其中它们之间存在多对多关系。您的数据模型应如下所示:

一旦你设置了数据模型,获取子类的最简单方法是转到顶部栏上的编辑器选项卡并选择“创建 NSManagedObject 子类”。选择这两个实体,它们应该被创建为看起来像上面的类。最后,将数据模型中每个实体的类更改为“xxxxxxxxxxx.EntityName”,其中 xxxxxxxx 是您的项目名称,实体名称是“项目”或“剪辑”:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-09-23
    • 2010-10-21
    • 1970-01-01
    • 2015-09-02
    • 1970-01-01
    • 2021-06-06
    • 1970-01-01
    相关资源
    最近更新 更多