Изменение имени файла модели управляемых объектов Core Data - PullRequest
0 голосов
/ 02 мая 2011

Как изменить имя файла модели управляемых объектов Core Data?

Я хотел бы изменить имя файла для модели управляемых объектов Core Data в моем проекте XCode. Меня не волнуют вопросы миграции.

В настоящее время я обращаюсь к файлу в своем коде следующим образом:

    NSString *path = [[NSBundle bundleForClass:[self class]] pathForResource:@"Template" ofType:@"momd"];

Я не нашел способ изменить имя файла / пакет momd, который не приводит к тому, что Xcode не может найти измененное имя файла.

Ответы [ 3 ]

6 голосов
/ 11 ноября 2013

У вас есть скрытый файл .xcurrentversion внутри "model".xcdatamodeld.

Просто отредактируйте этот файл в соответствии с новым именем вашей модели:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs$
<plist version="1.0">
<dict>
        <key>_XCCurrentVersionName</key>
        <!-- This name should be the same as the file name !-->
        <string>"model".xcdatamodel</string> 
</dict>
</plist>
4 голосов
/ 02 мая 2011

Сделано несколько раз.

Просто переименуйте xcdmodel и позаботьтесь об имени, когда вы загрузите его из пакета. Перед тем, как бежать, обязательно очистите цель. (Например, удалите все предварительно скомпилированные файлы, иначе он думает, что он уже скомпилировал модель, и, следовательно, ваше приложение не может загрузить momd, так как они там с неправильным именем)

0 голосов
/ 05 июля 2012

Уверен, что это причина: http://openradar.appspot.com/7500956

...