Core data 我是否必须使用弱属性来为核心数据中的父子关系建模?

Core data 我是否必须使用弱属性来为核心数据中的父子关系建模?,core-data,ios8,Core Data,Ios8,我知道这似乎是一个愚蠢的问题,但在对核心数据中的典型主细节或父子关系进行建模后,我想创建NSManagedObject子类,我意识到核心数据代码生成器总是对父属性使用strong/retain。是这样吗?在普通对象图中,这是错误的,因为我们有一个保留周期,但在核心数据上下文中不确定,因为我想代码生成器应该正确地生成代码。谢谢你的建议 尝试在NSManagedObject子类中使用弱属性后,我收到: 2016-03-15 11:57:36.921 WWWWW[84639:1153803]核心数据

我知道这似乎是一个愚蠢的问题,但在对核心数据中的典型主细节或父子关系进行建模后,我想创建NSManagedObject子类,我意识到核心数据代码生成器总是对父属性使用strong/retain。是这样吗?在普通对象图中,这是错误的,因为我们有一个保留周期,但在核心数据上下文中不确定,因为我想代码生成器应该正确地生成代码。谢谢你的建议

尝试在NSManagedObject子类中使用弱属性后,我收到:

2016-03-15 11:57:36.921 WWWWW[84639:1153803]核心数据:错误:物业“公司”在“包装”类上标记为“薄弱”。无法为其生成setter方法。
2016-03-15 11:57:36.921 WWWWWW[84639:1153803]-[Package setCompany:]:发送到实例0x7f97917068e0的选择器无法识别
2016-03-15 11:57:36.933 WWWW[84639:1153803]***由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:'-[Package setCompany::]:未识别的选择器发送到实例0x7f97917068e0'

你说得对:CoreData确实使用强引用,这确实创建了保留周期:请参阅中的“断开对象之间的强引用”。感谢帮助和文档。我没有读那个医生。我看到他们提到了refreshObject:mergeChanges:但我没有看到关于使用弱而不是强/保留的任何内容。我仍然不清楚,但是谢谢你的帮助。使用弱属性是不起作用的。有什么帮助吗?对不起,我不是想暗示你应该使用“弱”。使用“strong”,但使用
refreshObject:mergeChanges
中断保留周期(需要时/如果需要)。