我有一个代表coredata的类 - 我如何添加一个getter?

时间:2012-03-29 23:25:53

标签: iphone objective-c ios core-data

我有一个名为Media的课程,代表coredata。如果我的数据库发生了变化,我会做编辑器>创建NSManagedObject子类,这将重写该类的.h和.m文件。

我想添加一个getter方法。据我所知,我不能通过一个类别来做到这一点。这样做的最佳方法是什么?

3 个答案:

答案 0 :(得分:4)

查看mogenerator,这是Cocoa社区可用的最有用的代码之一。

  

与Xcode不同,mogenerator管理每个实体两个类:一个用于   机器,一个人类

     

始终可以覆盖机器类以匹配数据模型,   与人类的工作毫不费力地保存

答案 1 :(得分:1)

复制getter,重写类,粘贴getter。 : - )

如果您有多个文件,并且假设您使用代码版本控制系统(您应该这样做!),您可以使用版本控制编辑器从“旧”文件中复制获取器。

答案 2 :(得分:1)

您可以将类别添加到NSManagedObject子类。将它放在一个单独的文件中,并且不要将您的getter命名为与托管对象变量相同(因此从技术上讲,它不再是getter,而是它在托管对象上的一个方法,可以访问您想要的任何内容)。重新生成课程时不会删除此内容。