2013-06-18 2 views
0

Le Марди 18 Juin 2013 12:50:29 UTC + 2, Appsido écrit: Здравствуйте,RestKit> [RestKit 0,9] базы данных ядра подкачки данных во время выполнения

я столкнулся вопрос, пытаясь создать новый постоянный магазин во время выполнения и использование этого нового постоянного хранилища.

Для создания нового постоянного хранилища Я использую следующий фрагмент кода

NSURL *modelUrl = [[NSBundle bundleForClass:[self class]] URLForResource:@"AppDataModel" withExtension:@"momd"]; 

NSManagedObjectModel *managedObjectModel = [[NSManagedObjectModel alloc] initWithContentsOfURL:modelUrl]; 

[[AppDelegate appDelegate] objectManager].objectStore = [RKManagedObjectStore objectStoreWithStoreFilename:@"AppStore" 
                             usingSeedDatabaseName:nil 
                             managedObjectModel: managedObjectModel 
                                delegate:nil]; 

Это прекрасно работает и создать новый постоянный магазин на файловом устройство iphone системы.

Затем я создаю новый объект и сохранить его в постоянном хранилище с помощью следующего фрагмента кода

MyEntity *f = [MyEntity object]; 
[f setValue:[NSNumber numberWithInt:70] forKey:@"id"]; 
[f setValue:@"New Family" forKey:@"name"]; 

NSError *error; 
[[f managedObjectContext] save:&error]; 
if (error) NSLog(@"error > %@", error); 

Объект сохраняется в постоянном хранилище, но не новый создал один, но старый.

Таким образом, можно определить несколько постоянных хранилищ на основе одного и того же файла модели данных и обменять их друг на друга во время выполнения и сохранить данные в каждом экземпляре постоянного хранилища.

Благодарим вас за поддержку.

ответ

0

Посмотрите на https://github.com/magicalpanda/MagicalRecord

// get the default context 
[NSManagedObjectContext MR_defaultContext]; 
// create the other context 
NSManagedObjectContext *myNewContext = [NSManagedObjectContext MR_context]; 
// set the new default 
[NSManagedObjectContext MR_setDefaultContext:myNewContext]; 

Вам нужно будет куда-то strore контексты, чтобы обмен между ними, может быть словарем.

+0

Благодаря указывая мне магические отчеты, но, к сожалению, я его не использую. Приложение основано на RestKit, который имеет RKManagedObjectStore с ManagedObjectContext для чтения. Прежде чем я должен изменить приложение Core (RestKit to Magical Records), я ищу решение для RestKit. – Appsido

+0

. А я вижу, что ваш ремикс будет основывать свой NSManagedObjectContext на новом созданном контексте Magical Records. Я попробую – Appsido

+0

Я попытался использовать фрагмент Magical Records, но restkit кажется не использующим только что созданный контекст – Appsido

0

Вы должны сначала удалить старый один persistentStore с этим кодом

[objectManager.objectStore deletePersistantStore]; 
Смежные вопросы