gpt4 book ai didi

ios - 将一个实体的数据添加到另一个实体 Coredata

转载 作者:行者123 更新时间:2023-11-28 05:58:58 26 4
gpt4 key购买 nike

我有一个名为 Course 的实体,另一个名为 Tasks。要完成类(class),用户可以创建多个任务。现在我有一个带有 UITextFields 的屏幕,它获取类(class)数据并存储它。用户可以创建多个类(class)并在表格 View 中查看它们。

现在,如果用户选择一门类(class),他将从核心数据中获取类(class)详细信息,但同时他也可以在该类(class)中添加任务。

那么我的问题是:我怎么知道正在保存的任务必须链接到用户选择的特定类(class)。

附数据库截图: Tasks Coursework

如果我不清楚,请评论。

这就是我在 CoreDataHandler.swift 文件中尝试做的事情

  class func saveTask(courseWorkName : CourseWork, taskName:String, percentComplete:Int, startDate:Date, endDate: Date, notes: String) -> Bool {
let context = getContext()
let entity = NSEntityDescription.entity(forEntityName: "Tasks", in: context)
let task = NSManagedObject(entity: entity!, insertInto: context)

let entity1 = NSEntityDescription.entity(forEntityName: "CourseWork", in: context)
let courseWork = NSManagedObject(entity: entity1!, insertInto: context)


// task.setValue(entity1, forKey: "courseworkName")
task.setValue(taskName, forKey: "taskName")
task.setValue(percentComplete, forKey: "moduleName")
task.setValue(notes, forKey: "notes")
task.setValue(startDate, forKey: "startDate")
task.setValue(endDate, forKey: "dueDate")
task.setValue(courseWorkName, forKey: "courseWork")


do {
try context.save()
return true
}catch {
return false
}
}

最佳答案

将您的 courseWork 对象传递给下一个推送的 Controller 并访问它。

在向表中输入数据时,请执行以下操作:

objCourse.tasks.append(task)
task.courseWork = objCourse

通过这样做,您可以获得反向关系。使用它,您可以使用任务访问类(class),反之亦然。

访问方式如下:

objCourseWork.tasks
objTask.courseWork

关于ios - 将一个实体的数据添加到另一个实体 Coredata,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50442535/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com