Почему нет обновленной документации core Data для Xcode 8?

#ios #objective-c #xcode #core-data

#iOS #objective-c #xcode #core-data

Вопрос:

Раньше было так просто создавать классы core data. Все, что вам нужно будет сделать, это файл> новый файл> Подкласс управляемых объектов и БАМ! У вас есть свой класс, и вы можете использовать его так, как и следовало ожидать для core data.

Теперь такой опции нет. И никто не задается вопросом, где этот вариант. Я попытался создать класс вручную, потому что расширение свойства core data теперь должно быть в производных данных, потому что я думал, что это просто сработает (это также означает, что вы всегда будете получать ошибки компиляции, потому что вы не можете импортировать необходимые заголовки, чтобы заставить отношения работать, но это совсем другой вариант), но, конечно, это не работает.

Если я создал объект «Person» с атрибутом «name», я не могу создать его экземпляр и получить доступ к атрибуту «name», даже если файл класса существует и даже если расширение свойства существует.

Везде, куда я смотрел, люди спрашивают о том, как заставить свои старые объекты core data компилироваться из своих старых проектов, но никто не создает новые проекты.

Я погуглил такие вещи, как «xcode 8 core data как создать классы coredata» «xcode 8 что такое «определение класса вручную / нет» «категория / расширение»» «xcode 8 что такое определение класса вручную / нет» «xcode 8 создать файл для объекта core data» «xcode 8 где опция подкласса coredata» «руководство по xcode 8 core data»

но ничего полезного не появляется. Все связано с версиями Xcode до 8 или содержит ответы / вопросы от других людей, связанные только с «версией инструмента»

Как мне создать подклассы core data в Xcode 8?

Комментарии:

1. developer.apple.com/library/content/documentation/Cocoa /… . Используйте эту ссылку, не пропускайте ни одной части. Сначала просто попробуйте пример приложения.

Ответ №1:

Вот опция в Xcode 8 — Создать подкласс NSManagedObject

введите описание изображения здесь

Комментарии:

1. Это создает категории, но разве они не должны автоматически генерироваться и храниться в производных данных?

2. На самом деле создается 4 файла: YourEntity.h /.m — эти файлы могут быть изменены и не будут воссозданы позже, и YourEntity CoreDataProperties.h / m, которые будут создаваться каждый раз, когда вы нажимаете кнопку «Создать подкласс NSManagedObject …». И нет, они не предназначены для хранения в производных данных. Решает ли это вашу проблему?

3. Существует также инструмент для генерации кода Core Data — github.com/rentzsch/mogenerator

4. Он делает то же, что и старый Xcode, но требуется гораздо больше постобработки после их создания, чтобы заставить их работать… Раздражающие дополнительные накладные расходы, но, по крайней мере, есть способ заставить это работать. Спасибо!