В Xcode 8.2 у меня есть проект Swift, в котором я создал объект данных ядра, который называется Paragem
. Я пытаюсь позвонить Paragem(context: mainContext)
, но подпись метода не появляется в автозаполнении. Если я пытаюсь сгенерировать файлы классов, он жалуется на двойное объявление, потому что Xcode автоматически генерирует файлы классов в папке производных данных. Кто-нибудь испытал это раньше? Что-нибудь, что я могу сделать, чтобы исправить это?Объект с автоматической сгенерированной базой данных, не отображающийся в автозаполнении
ответ
Автоматически сгенерированный код не подходит для редактирования, поскольку он регенерируется всякий раз, когда модель загрязняется, поэтому файлы живут в DerivedData.
Если вы хотите добавить свои собственные функции в автоматически создаваемые подклассы, вы должны создать новое расширение в своем собственном источнике. Если вы хотите добавить свойства со своим собственным хранилищем, вы можете изменить тип генерации кода на «Категория/Расширение», а затем создать файл определения класса в своем исходном дереве для новых методов. See Apple Staff Response
Все еще, если вы хотите сгенерировать его самостоятельно, вы можете отключить его в Data Model Inspector
. см. прилагаемый скриншот для быстрой справки.
Набор Codegen настройки для Руководство/Node Таким образом, Xcode не перестает генерировать автоматическое определение класса.
Надеюсь, это поможет.
Вы просто пытаетесь его инициализировать? – Pierce
Вы сохранили изменения модели? – Mannopson
Я просто пытаюсь его инициализировать. – pedroremedios