当我将以下关系的关系从one-to-one更改为one-to-many时,将收到以下错误消息

eventSch?.setValue(eventDesc, forKey: "eventDec")
eventDesc.setValue(eventSch, forKey: "eventSchedule")

***由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“的值类型不可接受
到多个关系:property=“eventDec”;所需类型=NSSet;
给定类型=EventDec;值=(实体:
事件编号:0x60800022bcc0
;
数据:{
事件日程表=无;
事件状态=0;})
如何消除此错误?

最佳答案

这:eventSch?.setValue(eventDesc, forKey: "eventDec")会导致错误,因为您正在提供一个实体;相反,您应该提供一个NSSet。
我不太了解Objective-C;但是,您的代码应该类似于这样:

NSMutableSet* eventDescSet = [NSMutableSet set];
[eventDescSet addObject: eventDesc];  // you have your set with one item
eventSch?.setValue(eventDescSet, forKey: "eventDec")

另外,为了清楚起见,我会使用更具描述性的名称。

10-05 20:23