使用magicalpanda的MagicalRecord导入多关系数据

时间:2012-02-03 20:23:40

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

我想在魔法熊猫的MagicalRecord的帮助下将json文件导入我的SQLite-CoreData-Database。 这是我的json文件的内容:

{
 "title":"Gebratener Schweinebauch auf dänische Art",
 "subtitle":"Stegt flaesk med persillesauce",
 "preparation_time":"35 Min.",
 "preparation_subtitle":"bei 225°C, nicht vorheizen.",
 "components":[
  {
        "name":"Hauptgericht",
                "ingredients": [
       {
          "name":"1 kg geschälte und gekochte Kartoffeln"
       }
  ]
  }
 ]
}

我正在尝试将文件的内容导入以下核心数据模型: 数据模型的图像:http://twitpic.com/8fa0y9

我使用以下代码导入json文件:

- (void)initializeRecipeDatabase {
NSString *resource = [[NSBundle mainBundle]     pathForResource:kRecipeInitialDatabaseContentFilename 
                                                                                                         ofType:kRecipeInitialDatabaseContentFileType];
NSError *parsingError = nil;
NSDictionary *result = nil;

if (NSClassFromString(@"NSJSONSerialization")) {
    NSInputStream *inputStream = [NSInputStream inputStreamWithFileAtPath:resource];
    [inputStream open];

    result = [NSJSONSerialization JSONObjectWithStream:inputStream options:0 error:&parsingError];
}
else {
    NSData *jsonData = [NSData dataWithContentsOfFile:resource];
    result = [jsonData objectFromJSONData];
}

[Recipe MR_truncateAll];
[[NSManagedObjectContext MR_defaultContext] MR_save];
[Recipe MR_importFromDictionary:result];
[[NSManagedObjectContext MR_defaultContext] MR_save];


}

导入工作没有给我一个错误,但是当我检查SQLite-Database的内容时,我在Ingredient-Table中有两个相同的条目:

数据库内容图片:http://twitpic.com/8fa0k3

目前我有点无助,要解决这个问题,如果有人可以帮助我,我会非常高兴。

1 个答案:

答案 0 :(得分:0)

您在导入过程中发现了一个错误。当前有一个pull request待处理可以解决此问题。我有待处理的待处理请求积压,但你可以看看那里,看看这对你现在是否有帮助。