CoreData,Magical Record和mogenerator

时间:2013-03-27 11:46:33

标签: ios objective-c core-data magicalrecord mogenerator

我刚安装了mogenerator来在我的项目中创建Managed Objects

我之前没有mogenerator工作。

我也在使用MagicalRecord

我有一个实体Message,我正试图运行这条线......

return [Message countOfEntitiesWithPredicate:[NSPredicate predicateWithFormat:@"user == 123"]];

但我在这一行收到unrecognized selector错误。

如果我将其更改为......

return [_Message countOfEntitiesWithPredicate:[NSPredicate predicateWithFormat:@"user == 123"]];

工作正常。但是愚蠢的事情是,我使用不同的谓词在几行之后执行相同的功能,并且在没有修复的情况下工作正常。我试过没有谓词但得到相同的结果。

修改

我只是试着评论这条线并放置......

return 0;

现在我在第二次使用这条线时得到了无法识别的选择器。这几乎就像我必须首先在_Message上调用它来“初始化”CoreData!!?!

有什么想法吗?

编辑2

我试图跑步时也会得到这个...

[Message createEntity];

相同的无法识别的选择器。如果要对我所有的核心数据工作都这样做,这非常烦人。

2 个答案:

答案 0 :(得分:1)

我有类似的问题。我意识到Core Data不喜欢名为“Message”和“Connection”的实体。使用我的自定义前缀对这些进行前缀解决了这个问题。

答案 1 :(得分:0)

我不知道100%这是答案,但是当我在iPhone模拟器中使用AppCode运行项目时,我看到一条奇怪的调试消息,说消息类已经实现了两次。

它必须已在我正在使用的另一个框架中实现。

当我将核心数据实体的名称更改为更独特的名称时,它工作正常。

我对所有TBH的编译感到惊讶。