gpt4 book ai didi

ios - 使用 mogenerator copyWithZone

转载 作者:行者123 更新时间:2023-11-29 03:16:58 24 4
gpt4 key购买 nike

我正在使用 Mogenerator 来生成我的模型。所以在我的人类模型中我有

- (id)copyWithZone:(NSZone *)zone
{
AppointmentGrid *appointmentGridCopy = [[[self class] allocWithZone:zone] init];
[appointmentGridCopy setEmployeeId:self.employeeId];
[appointmentGridCopy setEmployeeObject:self.employeeObject];
[appointmentGridCopy setServiceId:self.serviceId];
[appointmentGridCopy setServiceObject:self.serviceObject];
[appointmentGridCopy setStartTimestamp:self.startTimestamp];
[appointmentGridCopy setEndTimestamp:self.endTimestamp];
[appointmentGridCopy setAppointmentGridSlots:self.appointmentGridSlots];

return appointmentGridCopy;
}

由于 Machine 类具有所有属性,所以我没有将它们重新添加到 Human 文件中。但是我收到错误

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[AppointmentGrid setEmployeeId:]: unrecognized selector sent to instance

我真的需要重新定义我的 Human 文件中的所有内容吗?

最佳答案

NSManagedObject 的实例必须使用指定的初始化器创建

initWithEntity:insertIntoManagedObjectContext:

Core Data 属性访问器方法是在运行时动态创建的,并且如果对象是使用普通 init 方法创建的,则无法工作。

这可能有效(未经测试):

AppointmentGrid *appointmentGridCopy = [[[self class] allocWithZone:zone] 
initWithEntity:self.entity
insertIntoManagedObjectContext:self.managedObjectContext];

关于ios - 使用 mogenerator copyWithZone,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21584201/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com