2015-01-16 1 views
1

У меня часто возникал сбой при перемещении файла модели из проекта в проект. Любая идея почему? Если я создам его из Xcode и создаю сущность вручную, этого не произойдет. Зачем?Сбой при загрузке файла модели. Модель была скопирована из другого проекта

lazy var managedObjectModel: NSManagedObjectModel = { 
     // The managed object model for the application. This property is not optional. It is a fatal error for the application not to be able to find and load its model. 
let modelURL = NSBundle.mainBundle().URLForResource("Model", withExtension: "momd")! 
return NSManagedObjectModel(contentsOfURL: modelURL)! 
}() 

enter image description here

UPDATE

Расширение файла не momd, но xcdatamodel. Но это не должно быть проблемой. Прорабатывался прочный проект с Model и его именем.

файл добавляется к цели: enter image description here

и в консоли вы можете увидеть его существование в нужном месте: enter image description here

ответ

0

Я нашел this, но он не работает. Кстати, что-то не так с компиляцией. Я удалил файл модели, добавил новую пустую модель с предыдущим именем, но теперь из Xcode. А затем отредактировал файл модели вручную и вставил связанные теги xml.

0

линии, где сбой пытается загрузить файл с именем Model.momd из пакет приложений и выбрасывает исключение («неожиданно найдено нуль при развертывании необязательного значения»), если этот файл не существует

Вы либо

  • Использование неверного имени файла, то есть файл модели, существует, но не называется Model.momd или
  • Используя правильное имя файла, но забыв включить этот файл модели в цель в приложения, когда вы добавляете его в новый проект. Смысл, файл существует в вашем проекте Xcode, но вы не сказали Xcode, чтобы включить его при создании приложения.

Вы можете проверить на второй возможности, выбрав некомпилированный файл модели (Model.xcdatamodel в вашем случае) в браузере файлов на левой стороне окна Xcode, а затем ищет в файле инспектора справа, под " Целевое членство ". Убедитесь, что целевое приложение проверяется:

Xcode target membership

+0

Оба ваших условия удовлетворены и по-прежнему получили сбой. Странный. –

+0

Тогда модель не существует в комплекте приложений по другой причине. Возможно, вы копируете сломанную копию, и компиляция по какой-то причине не работает. –