【问题标题】:Core Data entity error with xmppxmpp 的核心数据实体错误
【发布时间】:2014-04-12 15:59:52
【问题描述】:

我正在使用 XMPP 框架的核心数据消息存储,我想向我的应用程序添加另一个核心数据实体,我创建 .xcdatamodeld 并创建实体,我将代码添加到我的 AppDelegate,但我得到了错误。会不会是因为我使用了 XMPP Framework 的 Core Data 消息存储,如何解决?

 NSManagedObjectContext *context = [self managedObjectContext_messageList];
NSManagedObject *contexNew = [NSEntityDescription insertNewObjectForEntityForName:@"UserProfileEntity" inManagedObjectContext:context];
[contexNew setValue:@1 forKey:@"id"];
[contexNew setValue:@"name TEST" forKey:@"name"];
[contexNew setValue:@"test YEP" forKey:@"test"];
NSError *error;
if ([context save:&error])
{
    NSLog(@"%@", error.description);
}

它在第二行崩溃

'+entityForName: nil 不是合法的 NSManagedObjectContext 参数 搜索实体名称'UserProfileEntity''

【问题讨论】:

    标签: ios objective-c core-data uiviewcontroller


    【解决方案1】:

    该错误意味着 nil 不是合法的传递给托管对象上下文的东西。那么,您是否以正确的方式注入了上下文?我的意思是下面一行

    NSManagedObjectContext *context = [self managedObjectContext_messageList];
    

    应该有类似的对应物

    yourController.managedObjectContext_messageList = theContextYouWantToInject;
    

    [yourController setManagedObjectContext_messageList:theContextYouWantToInject];
    

    如果您在此处使用 segues,请进行有用的讨论:'+entityForName: nil is not a legal NSManagedObjectContext parameter - Core Data

    此外,您确定您提供的是有效的商店协调员吗?如需更多参考,请查看The Core Data Stack

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-06
      • 2011-10-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多