请帮忙。
我有3个NSManaged
个对象。
说员工,薪资单,PayItem
每个Employee
可以有多个Payslips
,每个Payslip
可以有多个PayItems
。
所以关系是员工< - >> Payslip<< - PayItem
它们都设置为NSManagedOjects
。
然后假设我每个都有3个实例:(想象一下我通过将它们添加到NSManagedObject类来初始化每个实例:
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
我总是得到错误:
无法在NSManagedObject类上调用指定的初始值设定项 &#39; PayItem&#39;
总而言之,我试图将员工与薪资单(即一对多,然后是payitem的薪资单,即一对多)联系起来。为什么我这么艰难?
答案 0 :(得分:0)
所以事实证明我有一个函数返回了一个未初始化的PayItem版本。追踪已经花了一段时间,但是这个问题解决了我的问题。