【发布时间】:2017-03-01 10:16:27
【问题描述】:
当我将以下关系从 one-to-one 更改为 one-to-many 时,我收到以下错误消息
eventSch?.setValue(eventDesc, forKey: "eventDec")
eventDesc.setValue(eventSch, forKey: "eventSchedule")
*** 由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“不可接受的值类型 多对多关系:property = "eventDec";所需类型 = NSSet; 给定类型 = EventDec;价值=(实体: 事件十二月;编号:0x60800022bcc0 ; 数据: { eventSchedule = nil; 事件状态 = 0; })。'
如何摆脱这个错误?
【问题讨论】:
-
你制作了新的模型版本吗?如果您只是在开发中,您可以简单地删除并重新安装。
-
不,我没有制作新版本。你的意思是删除模型并重新安装?
-
假设
eventSchedule和eventDec是反向关系,你不需要同时设置。最简单的就是设置to-one结束关系(CoreData会自动更新逆向),所以删除第一行就行了。 -
@pbasdf,实际上你的解决方案解决了我所有的问题。非常感谢:) :)