我有一个与目标有一对多关系的 CoreData 对象 Player。我正在尝试像这样添加一个目标对象,
Goal *fg =(Goal*)[self.database createGoalObject]; //Custom function
Player* player = (Player*)[NSEntityDescription insertNewObjectForEntityForName:@"Player" inManagedObjectContext:self.database.managedObjectContext];
[player addGoalsObject:fg];
我的应用程序因以下错误而中断:
'NSInvalidArgumentException', reason: '-[__NSCFSet entity]: unrecognized selector sent to instance 0x8d90f00'
调试提示符处的 po 显示 0x8d90f00 是一个 Goal 对象。我的问题是:
- 为什么核心数据向目标对象发送消息?
- 为什么 Player 的目标关系初始化为零?在加载之前它不应该是一个空集吗?
- 我是否必须覆盖 Player.h 中的 addGoalsObject 才能手动设置值?