Xcode не будет создавать классы NSManagedObject из модели данных

Я начинаю процесс преобразования приложения в Core Data. Я построил модель данных и сначала получил Xcode для успешного создания NSManagedObject пользовательские классы, соответствующие сущностям. Но затем я понял, что имена сущностей и классов не имеют префикса моего приложения, что, как я думал, значительно увеличит нагрузку на требуемые изменения кодирования для преобразования в Core Data.

Поэтому я удалил ссылки на пользовательские классы, переименовал свои сущности в модели данных с моим префиксом, сбросил атрибут "class" для каждой сущности на значение по умолчанию и попытался снова создать пользовательские классы. Я прошел через мастер так же, как и раньше, но теперь XCode отказывается создавать классы для сущностей и вместо этого создает одну пару заголовок-реализация с именем приложения. Файлы.h и.m соответствуют сущности, которую я классифицирую (или последней сущности в списке, когда я выбираю несколько), но имена и отношения недействительны, конечно, и поэтому бесполезны. Может кто-нибудь объяснить, почему XCode делает это, и как решить это?

1 ответ

Решение

Имя класса для создаваемых управляемых объектов должно соответствовать именам создаваемых классов - поэтому я не уверен, что вы подразумеваете под сбросом их по умолчанию, но говорят, что ваш префикс - AB, а ваш класс - Что ж, тогда вы бы хотели, чтобы атрибут класса был ABThing. Если вы уже сделали это, возможно, я неправильно понял, что вы имели в виду, вернув их по умолчанию. Также стоит отметить, что если вы снова запустите свое приложение, после изменения базовой модели данных, то вам придется удалить текущую базовую модель данных - вы можете использовать:

NSError* error = nil;
[[NSFileManager defaultManager] removeItemAtURL:<URL For your Store> error:&error];
Другие вопросы по тегам