Core data 如何为MR_findFirst设置NSManagedObjectContext?

Core data 如何为MR_findFirst设置NSManagedObjectContext?,core-data,ios7,magicalrecord-2.2,Core Data,Ios7,Magicalrecord 2.2,我将MagicalRecord用于我的CoreData存储。我有一条语句,在执行该语句时,不同的用户会产生多个崩溃: PreferenceData *prefDataFound = [PreferenceData MR_findFirst]; 错误是: +entityForName:nil不是搜索实体名称“PreferenceData”的合法NSManagedObjectContext参数 来自此调用序列(来自Crashlytics): 所有这些都向我表明,MR_findFirst调用没有有效

我将MagicalRecord用于我的CoreData存储。我有一条语句,在执行该语句时,不同的用户会产生多个崩溃:

PreferenceData *prefDataFound = [PreferenceData MR_findFirst];
错误是:

+entityForName:nil不是搜索实体名称“PreferenceData”的合法NSManagedObjectContext参数

来自此调用序列(来自Crashlytics):

所有这些都向我表明,MR_findFirst调用没有有效的上下文;除了使用*MR_findFirstWithPredicate:*(我没有谓词,我只想要第一条也是唯一一条记录),我还能做些什么来解决这个问题?

您可以调用

PreferenceData *prefDataFound = [PreferenceData MR_findFirstInContext:context];
根据您当前的上下文,而不是依靠神奇的记录来确定
魔法般的当前背景。

这就是我不喜欢魔法记录的原因。线程和上下文有很多魔力。-如果您有当前上下文,则可以调用
[PreferenceData MR_findFirstInContext:context]
。马丁R:请将您的评论改写为答案。我看了看,甚至没有意识到这种方法。谢谢你,我想这会成功的!SD
PreferenceData *prefDataFound = [PreferenceData MR_findFirstInContext:context];