Я создал базу данных SQLite, содержащую записи из некоторого JSON, используя this tutorial, и я хочу использовать MagicalRecord для его запроса.Использование существующей базы данных SQLite в MagicalRecord
MagicalRecord видит NSManagedObject (BlogPost
) и может создавать записи, но он не видит предварительно заполненные записи, поэтому я предполагаю, что он не видит файл SQLite, который я добавил. Я проверил, что база данных SQLite действительно содержит строки с использованием клиента SQLite.
В application:didFinishLaunchingWithOptions:
, я поставил:
[MagicalRecord setupCoreDataStackWithStoreNamed:@"DBG.sqlite"];
И в applicationWillTerminate:
:
[MagicalRecord cleanUp];
Когда я звоню [BlogPost MR_findAll]
в контроллере, он возвращает пустой набор. DBG.sqlite находится в корне каталога проекта, и я попытался поместить его в «Copy Bundle Resources», но blogPosts
по-прежнему возвращает пустой набор.
Любые идеи?
Это SQLite-файл, связанный с определением модели Core Data? Как вы его создали? – Wain
Я создал его с помощью учебника, связанного в вопросе. (В основном, я сделал инструмент командной строки, который использует модели Core Data в моем основном приложении (приложение, описанное в вопросе), чтобы преобразовать JSON в записи Core Data, а затем скопировал полученный SQLite-файл в основное приложение.) Я неправильно предполагая, что 'setupCoreDataStackWithStoreNamed:' является способом подключения Core Data к существующему хранилищу данных? – Tom
Вы каким-либо образом изменили модель с момента создания файла sqlite? – Wain