如何使用一对多关系向核心数据添加数据?

时间:2016-07-04 15:06:11

标签: ios swift swift2

我想要添加一天到一周的记录。我已经在xcode中设置了实体和关系,但是我不确定下一步。

我认为我需要手动设置自动生成的外键字段吗?

目前我的dat保存代码如下:

    if let managedObjectContext = (UIApplication.sharedApplication().delegate as? AppDelegate)?.managedObjectContext{
        day = NSEntityDescription.insertNewObjectForEntityForName("Days", inManagedObjectContext: managedObjectContext) as! Days
        day.day = text!
        day.restDay = restday

        do{
            try managedObjectContext.save()
            print("saved a day to SQLite")
        } catch {
            print(error)
            return
        }
    }

模型(S) enter image description here

1 个答案:

答案 0 :(得分:2)

如果您为此模型自动生成代码(通过让XCode创建NSManagedObject的子类),那么您将全部设置完毕。在创建Weeks实例时,您需要做的只有Days的实例(例如,作为函数的参数),并在保存上下文之前添加此行:

day.dayWeek = week // assuming 'week' is an existing instance of Weeks

这会将Weeks实例添加到您的Days实例中,并自动将您的Days实例添加到同一{Days中的{un}有序集合中Weeks 1}}实例。