Я бы хотел импортировать json-файл в базу данных SQLite-CoreData с помощью MagicalRecord магической панды.Это содержимое моего 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, у меня есть две равные записив таблице ингредиентов:
Изображение содержимого базы данных: http://twitpic.com/8fa0k3
В настоящее время я беспомощен в решении этой проблемы, и я был бы очень рад, если бы кто-то могпомоги мне.