在 swift 中加入多个关系
Joining multiple relationships in swift
请帮忙。
我有 3 个 NSManaged
对象。
说员工,工资单,工资项目
每个Employee
可以有多个Payslips
,每个Payslip
可以有多个PayItems
。
so the relationship is Employee <->> Payslip <<- PayItem
都设置为NSManagedOjects
。
然后假设我有 3 个实例:(假设我通过将其添加到 NSManagedObject class 来初始化每个实例:
convenience init(context: NSManagedObjectContext)
{
let entity = NSEntityDescription.entity(forEntityName: <entity>, in: context)!
self.init(entity: entity, insertInto: context)'
}
那我就可以申报了
var employee = Employee(context: context)
var payslip = Payslip(context: context)
var payItem = PayItem(context: context)
那我可以:
employee.addToPayslip(payslip) //Using the function created for me by default.
但如果我尝试:
payslip.payItem = payItem
我总是得到错误:
Failed to call designated initializer on NSManagedObject class
'PayItem'
总而言之,我正在尝试 link 员工到工资单,即一对多,然后是工资单到付款项,即一对多。为什么我过得这么艰难?
原来我有一个返回未初始化版本的 PayItem 的函数。花了一段时间才找到,但解决了我的问题。
请帮忙。
我有 3 个 NSManaged
对象。
说员工,工资单,工资项目
每个Employee
可以有多个Payslips
,每个Payslip
可以有多个PayItems
。
so the relationship is Employee <->> Payslip <<- PayItem
都设置为NSManagedOjects
。
然后假设我有 3 个实例:(假设我通过将其添加到 NSManagedObject class 来初始化每个实例:
convenience init(context: NSManagedObjectContext)
{
let entity = NSEntityDescription.entity(forEntityName: <entity>, in: context)!
self.init(entity: entity, insertInto: context)'
}
那我就可以申报了
var employee = Employee(context: context)
var payslip = Payslip(context: context)
var payItem = PayItem(context: context)
那我可以:
employee.addToPayslip(payslip) //Using the function created for me by default.
但如果我尝试:
payslip.payItem = payItem
我总是得到错误:
Failed to call designated initializer on NSManagedObject class 'PayItem'
总而言之,我正在尝试 link 员工到工资单,即一对多,然后是工资单到付款项,即一对多。为什么我过得这么艰难?
原来我有一个返回未初始化版本的 PayItem 的函数。花了一段时间才找到,但解决了我的问题。